仍然感觉通过MVVM,并遇到了这个问题:
我有一个顶级ViewModel,我们称之为ModelLevel1。
我有一个属于它的子ViewModel,一个控件用于它的所有绑定,让我们调用ControlViewModel1。 Control仅绑定到ControlViewModel1。
在顶级Viewmodel中,有一个Repository,以及一个从id获取存储库记录的方法。
允许ControlViewModel1访问该方法以便从存储库中获取记录的最佳方法是什么?
干杯,
罗布
答案 0 :(得分:0)
允许ControlViewModel1访问该方法以便从存储库中获取记录的最佳方法是什么?
IMHO Controls是自包含单元,具有为VM功能提供服务的依赖属性;因此不需要VM。
compiled
转换为C#代码,这些代码在代码旁边执行。您在代码中使用的访问方法和对象的任何过程也可以转移到控制页面上的实例。
答案 1 :(得分:0)
在Single Responsibility Principle之后提取将记录提供给知道如何操作并将该依赖注入两个ViewModel的类的逻辑。
这种方法可以被其他类重用,可以轻松测试并且具有高性能(与聚合事件提议不同)。