gpt4 book ai didi

wpf - 在 WPF 应用程序中使用 IoC 解决依赖关系的位置在哪里?

转载 作者:行者123 更新时间:2023-12-03 10:37:50 24 4
gpt4 key购买 nike

我在 Mark Seemann 的“.NET 中的依赖注入(inject)”中读到,应该有一个地方(每个地方)必须调用 Register、Resolve 和 Release。现在,我正在尝试设置新 WPF 项目的环境。我们的团队决定使用 Caliburn.Micro 作为 MVVM 框架,使用 MEF 作为 IoC。
所以,我清楚地知道必须在哪里调用 Register,但是 Resolve 呢?
我还在书中读到,在 ASP.NET MVC 应用程序中有一个必须调用 Resolve 的地方:

override IController GetControllerInstance(RequestContext requestContext,
Type controllerType) {
return (IController)this.container.Resolve(controllerType);
}

但是调用应该驻留在 WPF 应用程序中的什么位置呢?此外,Caliburn 能以某种方式帮助解决这个问题吗?

最佳答案

But where should the call reside within a WPF app? Besides, can Caliburn help somehow with accomplishing this issue?



实际上,Caliburn.Micro 会为您处理这部分,因为当您从现有的 BootstrapperBase 派生 Bootstrap 时或 Bootstrapper<TRootModel> ,这些 Bootstrap 调用一个名为 Start() 的方法它启动了一系列事件,这些事件构成了应用程序的整个对象图,从 TRootModel 开始或者随便你叫什么 DisplayRootViewFor(Type viewModelType)为了。

关于wpf - 在 WPF 应用程序中使用 IoC 解决依赖关系的位置在哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19109847/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com