【发布时间】:2010-12-18 10:46:07
【问题描述】:
我是 IoC 世界的新手,在 Winforms 应用程序中实现它时遇到了问题。我有一个非常基本的应用程序 Winform 应用程序,它使用 MVC,它是一个完成所有工作的控制器和一个工作对话框(显然带有一个控制器)。因此,我将所有类加载到 program.cs 中的 IoC 容器中,并使用该容器创建主表单控制器。但这是我遇到问题的地方,我只想在使用时创建工作对话框控制器并在 using 语句中。
起初我传入了容器,但我读过这是不好的做法,而且容器更多是静态的,我想对这个类进行单元测试。
那么如何在不传入容器的情况下以单元测试友好的方式创建类,我正在考虑抽象工厂模式,但仅此一项就可以在不使用 IoC 的情况下解决我的问题。
我没有使用任何著名的框架,我从这篇博文http://www.kenegozi.com/Blog/2008/01/17/its-my-turn-to-build-an-ioc-container-in-15-minutes-and-33-lines.aspx借了一个基本的框架
我如何使用 IoC 做到这一点?这是对 IoC 的错误使用吗?
【问题讨论】:
标签: c# .net winforms unit-testing inversion-of-control