是否可以使用 Spring.NET IoC 容器进行类似的操作?
MyClass instance = new MyClass();
ContextRegistry.GetContext().InjectDepenencies(instance);
// instance has the defined dependencies set
这会派上用场的。当然我可以使用ContextRegistry.GetContext().Get("name")
但这会创建已定义对象的新实例。我需要设置已创建对象的依赖关系。
最佳答案
共有三个选项,第一个符合您的需求。
IApplicationContext.ConfigureObject(对象目标,字符串名称)
这使用与名称参数匹配的对象定义来配置目标对象。
IApplicationContext.Get(字符串名称, 对象[]参数)
这将使用构造函数 或静态工厂方法,它将 接收指定的参数。
GenericApplicationContext.RegisterObjectDefinition(字符串名称,IObjectDefinition 定义)
您可以使用它在运行时注册依赖项。
关于c# - 我可以使用 Spring.NET 在创建的实例中注入(inject)依赖项吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1714281/