我有一个带有一些artuments的构造函数
public class AppEngine:IAppEngine
{
private IGreeter _greeter;
private string _str;
public AppEngine(IGreeter greeter,string str)
{
_greeter = greeter;
_str = str;
}
public string Run()
{
return _greeter.Greeting()+":"+_str;
}
}
这里从工厂我想得到实例
var obj = ObjectFactory.GetInstance<IAppEngine>();
这里我想传递构造函数正在接受的Arguments。 我怎么能这样做。
此致
答案 0 :(得分:8)
如果要在调用ObjectFactory时指定参数,可以这样做:
ObjectFactory.With("str").EqualTo(someValue).GetInstance<IAppEngine>();
如果您需要做多个参数,您可以将它们链接在一起。请注意,您还可以在像这样进行初始化时为所有实例定义构造函数值:
ForRequestedType<IAppEngine>().Use<AppEngine>().WithCtorArg("str").EqualTo(someValue);
答案 1 :(得分:-1)
//Arguments Constructor
Example(int id,String Name){ //Define }//main method
//Object Creation
//Object Creation for Default Constructor
Example e1=new Example();
//Object Creation for Arguments Constructor
Example e2=new Example(101,"kathik");}