[英]Property injection in static class with Simple Injector
该文档未说明如何注入静态属性,因为Simple Injector不支持此属性。
静态属性通常不是一个好主意,因为它们会阻碍可测试性,导致时间耦合 ,并可能导致依赖关系 。
如果需要静态属性,则必须自己注入依赖项。 在对容器进行所有注册之后,就可以在“ 合成根目录”中执行此操作。
例:
var container = new Container();
// Make registrations to container here:
container.Verify();
Utility.MyStaticProperty = container.GetInstance<IDependency>();
在正常情况下,Simple Injector将检测到这些类型的生活方式不匹配 ,但是当您自己注入此属性时,它将无法检测到。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.