【发布时间】:2012-01-22 21:24:16
【问题描述】:
我在项目中使用 Unity 已经有一段时间了。我有一个单例容器,我用它来注册类型和/或实例,然后再解析。
今天我想通过使用属性或构造函数注入来自动化一些实例化。
我从 Logger 类开始。在应用程序开始我有这个代码:
RegisterType<Logger, Logger>();
比在我的 ViewModel 中
[Dependency]
public Logger MyLogger {
get;
set;
}
这是我如何实例化具有此属性的视图模型(在 MainWindow.xaml.cs 中)
private void InitializeViewModel() {
_vm = new MainViewModel(MainGrid);
...
MyContainer.GetInstance().Container.RegisterInstance<MainViewModel>(_vm);
我无法让那个 [属性注入器] 工作。属性注入是否需要与构造函数配对?我已经在使用一个有一些参数的构造函数了..
【问题讨论】:
-
如何创建包含 Logger 属性的对象?
-
这就是我的怀疑,请参阅@WiktorZychia 的答案 :)
标签: c# dependency-injection unity-container