【发布时间】:2012-06-19 16:31:08
【问题描述】:
这个问题类似于Where does business logic sit in MVVM?
但是,我不想在那个上创建评论链
例如,假设我有一张发票表,我想获取这些数据并对其执行一些分配,以便在 2 个完全独立的报告和 3 个屏幕中使用。
在我们当前的 Web 应用程序中,我会将它放在数据服务层中,我的所有报表和屏幕都会调用它
在 MVVM 中,人们似乎建议不应该让模型臃肿,而应该将逻辑放在视图模型中。但在这种情况下,我将重复代码 5 次?
在他对我的另一个问题的回答中,Reed 指出“任何特定于领域或业务的东西都应该可以被其他应用程序重用,使用其他架构。”
Reed 或其他人能否澄清我的方法应该是什么? MVVM 可以和其他架构结合吗?
我正在使用 Silverlight 5 和 Simple MVVM Toolkit
保罗
【问题讨论】:
-
难道不能建立一个“帮助”类或一个对象来处理报告的公共输入,并输出一个您可以针对 ViewModel 编写代码的公共对象吗?
-
好的,谢谢,所以这将位于 silverlight 应用程序的 helpers 文件夹中,是吗?
-
哦,简单的方法是您可以使用通用上下文,例如创建一个类并定义您想要的所有方法,然后像在 viewmodellocator 中一样第一次创建该类对象,然后您可以为整个应用程序使用相同的上下文并且您不需要再次编写所有方法只需使用该对象
标签: silverlight mvvm mvvm-toolkit