inversion-of-control相关内容

ServiceContainer,IoC和一次性物品

我有一个问题,我将标记这个主观,因为我认为这会演变为更多的讨论.我希望有一些好主意或发人深省的想法.对于这个冗长的问题,我深表歉意,但您需要了解具体情况. 问题基本上是: 您如何处理与IoC容器相关的具体类型?具体来说,由谁负责处置它们,如果需要处置,那么这些知识如何传播到调用代码中? 您要求它们是IDisposposable的吗?如果不是,那么该代码是否适用于未来,还是不能使用 ..
发布时间:2020-11-26 04:11:09 其他开发

Guice-Guice中的Spring Autowired等效于什么

我正在尝试使用Guice,而我来自Spring. 我想知道@Inject是否等于Spring中的@Autowired,是否可以像在Spring中一样使用它在Web应用程序中使用. 想象一下,我有一个依赖于服务的Facade,在Spring中我可以为该服务定义一个bean,然后在服务器启动时就可以在Facade中获取该服务的实例. class FacadeImpl{ @Auto ..

通过键和使用SimpleInjector自动注册来解析实例

我正在尝试通过键解析实例与SimpleInjector. 就我而言,密钥是来自配置文件的字符串,我需要工厂根据字符串返回正确的类型. 我使用了类似于上面链接中所述的解决方案,但对其进行了少许更改,因此实例可以提供自己的密钥. (会有许多实现IFoo的类,所以我想用它们的键自动注册它们) 这是完整的工作示例(.NET Core控制台应用程序): (为了简化可读性,我将其简短表示,因 ..

使用存储库模式,工作单元和统一性的实体框架

使用此示例和此实现我正在尝试创建一个解决方案,以将 UnitOfWork 类与单个存储库,因为它们违反了开放式封闭原则,因为每次添加新存储库时,都必须修改 UnitOfWork 类。我正在使用Unity作为IoC容器来连接依赖项。 我的问题是自动连接 UnitOfWork , IDbContext 和存储库( IEmployeeRepository 和 ICustomerRepository ..

使用new创建对象时,Spring注入的bean为null,如何解决呢?

我有一个应用程序,现在我正在尝试使用Spring对其进行重构,并且在使用 new 创建对象时遇到了问题,但是我不知道如何解决它。 这是现实: 我有一个 Controller ,需要 CommandService 实例,而 CommandService 需要 RoomService 创建 AbstractRoom 实例并放入 RoomService 实例的哈希图中。 我有两种 Ab ..

在C#中创建自定义容器类

我正在为自定义IOC容器编写一个基本的c#类,其中包含两个Public方法Register()&我下面的代码是Resolve()和一个私有方法CreateInstance() 。 在下面的代码中, CreateInstance()方法,我在不使用泛型的情况下获取语法错误来解决依赖关系(注释行),我可以解决依赖关系,并且工作正常,而在将泛型用于默认类型转换时,我遇到了语法错误 有人 ..
发布时间:2020-10-20 21:01:45 C#/.NET

依赖注入与循环依赖

让我有两个非常基本的对象,例如: 公共类View { public View (控制器控制器) { //在此处使用控制器公开的模型 } } 公共类控制器 { 私有只读IView视图; public Controller() { this.view = new View(this); } public Controller(View v) { th ..
发布时间:2020-10-20 20:46:59 C#/.NET

依赖注入,组合根和入口点

我已经花了很多时间阅读这些文章(以及许多其他文章): 马克·塞曼-纯DI 马克·塞曼-何时使用DI容器 标记Seemann-充满信心地构成对象图 马克·西曼(Mark Seemann)-不要呼叫容器;它会叫你 马克·塞曼-了解合成根 ,而我仍在努力围绕DI以及IoC容器的“连接依赖项”和“自动接线”功能的概念。 我想我了解依赖注入和控制反转的理论,并且从2 ..
发布时间:2020-10-20 20:44:45 其他开发

我解释DI和IoC的方式有什么问题?

昨天,在一次采访中,我被问及春季的DI和IoC是什么。我的答复是: 当 class(A)扩展抽象 class(B)或实现 interface(B) 或创建 class( B)中的任何类别,那么据说 A 是 ,具体取决于 B 。注入此依赖关系,即以 构造函数或setter方法注入对象称为DI,在此过程中,对对象的创建 控制进入“外部世界”,如XML 配置,这种反转控制的是IoC。 D ..
发布时间:2020-10-20 20:38:13 其他开发

Windows Phone应用程序中成分的根在哪里?

我是WP 7的新手。出于依赖关系注入的目的,我希望遵循使用WinForms应用程序获得的实践。因此,我想在组成根目录下构建我的应用程序图。 解决方案 我喜欢的模式如“图案和图片”建议的那样实践团队是: 将 ViewModelLocator 类添加到您的资源 App.xaml 和 x:Key =“ ViewModelLocator” ,并为该类添加每个ViewModel的属性 在应用 ..

传统的3层架构与使用IOC的3层架构

我正在构建一个具有表示层(PL),业务逻辑层(BLL)和数据访问层(DAL)的3层体系结构。 传统的3层体系结构逻辑指出BLL应该充当PL和DAL之间的调解人。 PL甚至不应该知道有数据库,而DAL甚至不应该知道有BLL或PL。 以上实现将在以下三个不同的物理项目之间产生以下依赖关系 PL 项目-> BLL DLL的引用 BLL 项目-> DAL DLL的引用 DAL 项目->无 ..
发布时间:2020-10-20 20:32:56 其他开发