当我围绕mvvm事物时,视图是视图,视图模型是"视图的模态",模型是我们正在处理的实体(或者至少这是我的理解).但我不清楚模型实体的填充时间和时间.例如:
假设我有应用程序需要在数据库中创建新记录.并且该记录应该具有默认值.谁负责新记录,并获取默认值.这与MVVM有什么关系还是数据访问层的一部分?谁调用了viewmodel?
或者当\检索到的记录在哪里时的现有记录?并且如果改变了就保存
谢谢
在一个过于简化的答案中,您的ViewModel应该包含用于控制View显示内容以及如何与Model或Data进行交互的LOGIC。
诸如获取数据,保存和删除之类的事件将通过Command机制进行拦截,并推送到ViewModel中,以便在其中进行测试。处理“脏”事件也是ViewModel的职责。至于谁调用ViewModel,您将把调用委托给WPF和Silverlight中可用的绑定机制。
在ViewModel中,仍然需要遵循最佳实践,并确保您拥有一个DataAccess层来抽象数据源,并可能使用存储库模式来抽象该数据源。
ViewModel的生命周期可以很简单,如下所示...
但是,由于您可能在VM的Ctor中有很多活动部件,包括数据存储库接口,因此您可能希望使用IoC。这将使ViewModel的生命周期更接近...
这看起来似乎是更多步骤,但是使用IoC容器,您实际上只是在调用单个方法,如IoC.Get(),其余步骤将根据所应用的约定自动连接起来。
| 归档时间: |
|
| 查看次数: |
3216 次 |
| 最近记录: |