Question

How to use Castle DynamicProxy to initialize a constructor with parameters? In this case MyClass(int).

public class MyClass
{
   public MyClass(){}
   public MyClass(int p1){}
}

Currently, CreateClassProxy() initializes MyClass().

Was it helpful?

Solution

CreateClassProxy has a lot of overloads. Including one where you pass parameters in an object array. This should work for you:

generator.CreateClassProxy(typeof(MyClass), new object[] { (int)2 });

Here is the official signature:

public object CreateClassProxy(Type classToProxy, object[] constructorArguments, params IInterceptor[] interceptors);

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top