gpt4 book ai didi

c# - 温莎城堡 : Can a Typed Factory Facility pass a parameter down to one of the type's dependencies?

转载 作者:太空宇宙 更新时间:2023-11-03 13:46:22 28 4
gpt4 key购买 nike

我对这样的构造函数有看法:

MyView(MyViewModel viewModel)

和带有这样构造函数的 View 模型:

MyViewModel(RuntimeParameter runtimeParam, <design-time resolvable parameters>)

我想使用 CaSTLe Windsor 的 Typed Factory Facility 功能创建一个 View 工厂,这样我就可以通过调用创建 View

MyView view = factory.Create(runtimeParam);

我已经能够使用 CaSTLe Windsor 文档创建一个 ViewModel 工厂 here ,但我无法让 View Factory 工作。传递给 View 工厂的运行时参数需要传递给 ViewModel。有没有办法告诉温莎这样做?

我想我可以使用两个工厂 - 一个用于 View ,一个用于 View 模型,但这看起来很难看...

最佳答案

不可能以您尝试的方式通过多层类型化工厂传递参数。我认为你最好的选择是让你的 View 依赖于你的 ViewModel 类型化工厂,并在其构造函数中从工厂请求 ViewModel(如果你愿意,可以从 View 的另一个类型化工厂调用)。

作为替代方案,请考虑您的 ViewModel 是否真的需要通过类型化工厂来解析。是否可以从容器中注册的某些服务中获取该 RuntimeParameter?通常,如果我能找到使“默认”行为起作用的方法,我会尽量避免使用类型化工厂。

关于c# - 温莎城堡 : Can a Typed Factory Facility pass a parameter down to one of the type's dependencies?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15207890/

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