首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为应用程序实现MVVM模式时出现问题

为应用程序实现MVVM模式时出现问题
EN

Stack Overflow用户
提问于 2011-05-22 12:58:52
回答 1查看 103关注 0票数 0

首先要告诉你的是,我是WPF的新手

我有一些问题在网上还没有找到答案……有些教程在那里,但它们又是令人困惑的……

问题:

1) MVVM是否可以用于有时间限制的项目(早期交付)。

2)如何使我的对象成为Model (实体类)。

3)其中将是数据访问层。在模型中??...

4)业务逻辑(某些部分)是否在VIEW MODEL

5)最令人困惑的是-我要制作多少个VIEW MODELS……我在web ....Either上见过一些示例应用程序,它们在1个视图模型中完成,或者它们使用的视图模型比实体类多1-2个...

我是否应该使用一个框架来实现初学者的level...please建议我一些...

不只是我,我的许多同事也面临着同样的问题……

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-05-22 13:19:08

我对MVVM的理解是这样的:

1)您的UI是数据绑定到您的ViewModel。您的ViewModel反过来包装您的模型,并将其转换为绑定友好的界面。模型可能是持久性友好的,但是持久性友好的模型并不总是UI友好的。ViewModel的想法是弥合这一差距,并使模型适应UI可以轻松绑定的东西。

2)如果您愿意,您的模型可以是任何类实体框架,也可以是普通类(我更喜欢)。唯一重要的是,当它的属性发生变化时,它能够通知你的ViewModel。因此,我通常建议模型类实现INotifyPropertyChanged或类似的东西。

3)这是一个设计决策,由您决定。您的数据访问层应该与模型分离,但应该与模型交互。参见单一责任原则。您的模型仅存储数据。

4)业务逻辑可以在ViewModel中,也可以在协调一个或多个ViewModels的控制器中。

5)您通常希望为每种类型的UI元素创建一个ViewModel。这可能会变得非常细粒度,特别是当ViewModels包含其他ViewModels时。例如,如果您的UI中有一个网格,那么您可能有一个用于整个网格的ViewModel,然后是另一个用于行本身的ViewModel类。拥有比模型更多的ViewModels并不少见-例如,您可能有一个用于网格行的ViewModel,以及一个用于详细视图的不同ViewModel,但它们可能映射到同一个模型。

希望这能有所帮助!

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6086157

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档