Bor*_*ski 7 dependency-injection mvvm
刚才我看到这个文章关于MVVMC模式.现在我有一个问题.是应该将Controller注入ViewModel,还是将ViewModel注入Controller?
小智 8
MVVMC只是一个MVC,其中View被ViewModel对替换.
我已经根据MSDN上Josh Smith的知名样本汇总了一个简单的样本......我在那里介绍了一个Controller.
这取决于你在做什么.我猜想大多数时候Controller都不需要注入,但如果需要,它更有可能在ViewModel中需要.让我解释.
你在用控制器做什么?你必须做某事......如果那个"某事"只与"数据看起来像什么"有关,那么它就属于视图.如果它与"向用户显示的内容"相关,则它属于ViewModel.
我正在向我的一个ViewModel中注入一个控制器.我的ViewModel表示在View中绘制的数据.我有一个命令可以将数据项从当前图形移动到新图形.由于这会改变"图形窗口中显示的内容",因此我在ViewModel中实现了该命令.ViewModel从其自己的项集合中删除数据项,然后使用Controller请求为该新数据创建新视图(它已具有此功能).
看一下这篇文章,我看不到控制器和视图之间的箭头

ViewModel 是 View 和 Controller 之间的契约,理想情况下也不需要了解(依赖)。
所以我绝对不会将控制器注入到视图模型中。
我不确定我是否会做相反的事情:控制器通常负责创建新的 ViewModel 实例。如果您想要更松散耦合的实现,您可以将抽象工厂注入到控制器中,以避免直接创建 ViewModel 类的新实例。
| 归档时间: |
|
| 查看次数: |
6169 次 |
| 最近记录: |