2016-09-21 99 views
0

人们如何经常在WinForm应用程序中使用IoC?任何最佳实践?如何使用生成的WinForms使用IoC?

我在问,因为Visual Studio为WinForms生成大量代码并为设计器使用无参数构造函数,那么我应该如何将我的依赖注入到表单中?我是否应该总是创建另一个构造函数并使用它,并让设计器无参数管理,或通过属性注入我的依赖项?

+0

非常清楚,你已经知道解决方案离开无参数的构造函数。那么你在问什么? –

+0

这个问题的原因是因为我知道多个解决方案,但不知道他们中的任何一个的缺点。这就是为什么我要求最佳实践。 – eocron

回答

1

在WinForms项目中使用了Autofac IoC之后,我们总是有一个主要构造函数以及第二个无参数构造函数,这个构造函数仅用于设计器,这个构造函数使用注释进行了明确标记。在完成主动的“设计”阶段以后,这个构造函数甚至可能会被注释掉。

我一定会远离使用属性注入,因为它更容易推理和更少的错误倾向于管理构造函数参数。