2

いくつかのアーティクルを備えたコンストラクターがあります

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>();

ここでは、コンストラクターが受け入れている引数を渡します。どうすればこれを行うことができますか。

よろしく

4

2 に答える 2

8

ObjectFactory を呼び出すときに引数を指定する場合は、次のようにできます。

ObjectFactory.With("str").EqualTo(someValue).GetInstance<IAppEngine>();

複数の引数を行う必要がある場合は、これらをチェーンするだけです。次のように初期化するときに、すべてのインスタンスのコンストラクター値を定義することもできることに注意してください。

ForRequestedType<IAppEngine>().Use<AppEngine>().WithCtorArg("str").EqualTo(someValue);
于 2013-03-15T14:28:19.690 に答える
-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");}
于 2013-12-16T09:24:44.030 に答える