[2 [2
将依赖项直接注入属性带来了巨大的困难,因为通用语言运行时(CLR)管理其实例化。 这也适用于属性注入,创建紧密的耦合并使代码变脆。
这样的做法可以干扰依赖性注入容器验证,使框架的缓存机制复杂化并导致紧密耦合依赖关系,从而增加了错误的可能性。
因此,最好避免属性内的依赖注入。
[2
[2 将属性元数据从其关联的功能中删除。
创建一个专用服务来处理逻辑及其依赖性。
[2
将所有属性逻辑重置为自定义服务。
在依赖项注入容器中注册此服务。 利用属性的方法作为简单的导管来解析和执行服务的方法。
建议的方法: 选项1,分开数据和行为,通常会导致更清洁的设计和更广泛的适用性。 但是,选项2在某些情况下提供了更实用的解决方案。
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3