相关疑难解决方法(0)

DI在桌面应用中有意义吗?

我即将创建一个桌面应用程序(使用.NET窗体)

基本上,我想创建一个n层应用程序,但我也希望层之间松散耦合.但是,我不太确定这是否适用于Windows窗体

现在我只是想知道使用任何IoC(StructureMap,Ninject,Spring.Net)是否真的是一个明智的选择,我之前使用过它们用于Asp.Net Web应用程序,但是现在让我怀疑的是这个事实Windows窗体我的业务实体将在我浏览选项卡时保持不变,而不像网络表单或mvc应用程序,其中必须为每个执行的新请求注入我的业务实体,我的意思是因为Asp.Net页面生命周期在哪里执行初始化和控制实例化.

这是一个长期的开发项目,它结合了维护跟踪,库存,工作单和管理报告.我目前正在制定其架构提案.

也许我误解了使用IoC的重点,所以请告诉我你认为什么是更好的选择?

任何观点都将不胜感激.

.net dependency-injection ioc-container inversion-of-control n-tier-architecture

7
推荐指数
2
解决办法
1696
查看次数

构造函数注入 - 在哪里调用?

我对构造函数注入模式和规则有点困惑不要调用容器; 它会打电话给你.

有人可以解释我(也许还有其他人)真正的应用程序如何使用构造函数注入获得所有DI优势?我给出了一些简单的,我认为常见的例子:

DomainObject
RepositoryObject
DaoObject
Run Code Online (Sandbox Code Playgroud)

关系很明显(我认为) - RepositoryObject需要DaoObject,DomainObject需要Repository.

使用构造函数注入我假设我可以忘记(在大多数情况下)关于NEW关键字,但是何时,何地以及如何创建新对象(主要是域)?我必须为所有班级写工厂吗?我应该在那家工厂参考DI Container吗?

最好的将是当有人向我展示一些真实的应用程序示例(请不要Asp.Net MVC :))或草绘一些项目结构.

.net dependency-injection constructor-injection

5
推荐指数
1
解决办法
466
查看次数