すべての依存関係がプログラムの開始時に既に登録されているとします。プログラムの後半で、AutoFac を使用してパラメーターなしのコンストラクターで新しいオブジェクトを作成し、登録されたプロパティをオブジェクトに挿入するにはどうすればよいでしょうか?
質問する
1184 次
1 に答える
8
オブジェクトをコンテナーに登録し、インスタンスPropertiesAutowired
が必要なときに resolve を使用できます。
ContainerBuilder builder = new ContainerBuilder();
// builder register other dependencies
builder.RegisterType<MyObject>().PropertiesAutowired();
var container = builder.Build();
var myObject = container.Resolve<MyObject>(); //the properties will be filled
または、コンテナーに登録したくない場合はInjectProperties
、既存のインスタンスでメソッドを使用できます。
ContainerBuilder builder = new ContainerBuilder();
// builder register other dependencies
var container = builder.Build();
var myObject = new MyObject();
container.InjectProperties(myObject); //the properties will be filled
于 2012-11-15T06:15:51.177 に答える