关于MVC的两个问题: 1).net MVC和Android MVC有什么区别? 2)为什么需要在MVC中使用ViewModels?
如果有人能回答这些问题,我将不胜感激。
答案 0 :(得分:0)
<强>模型 - 视图 - 控制器强>
在MVC中,Controller负责确定显示哪个View以响应任何操作,包括何时加载应用程序。这与MVP不同,其中操作通过View路由到Presenter。在MVC中,View中的每个操作都与对Controller的调用以及操作相关联。在网络中,每个动作都涉及对URL的调用,在URL的另一侧有一个Controller响应。控制器完成处理后,将返回正确的视图。在整个应用程序的生命周期中,序列以这种方式继续:
Action in the View
-> Call to Controller
-> Controller Logic
-> Controller returns the View.
MVC的另一个重要区别是View不直接绑定到Model。视图简单地呈现,并且完全是无状态的。在MVC的实现中,View通常不会在后面的代码中有任何逻辑。这与MVP相反,在MVP中绝对必要,好像View不会委托给Presenter,它永远不会被调用。
答案 1 :(得分:0)
MVC是一个概念,而不是一个可靠的编程框架。您可以在任何平台上实现自己的MVC。
模型:呈现内容
查看:如何呈现
控制器:事件,用户输入
问题1:Android MVC和.Net MVC
Android MVC:
在Android中你没有MVC,但你有以下内容:
.net MVC:
ASP.Net MVC是一个开源Web应用程序框架,它实现了模型 - 视图 - 控制器(MVC)模式。
更多参考:http://en.wikipedia.org/wiki/ASP.NET_MVC_Framework
问题2:为什么需要在MVC中使用ViewModel?
ViewModel帮助我们以比模型或ViewBag / ViewData对象等复杂对象更灵活的方式组织和管理强类型视图中的数据。它允许您将一个或多个数据模型或源中的多个实体整形为一个对象,针对视图的消费和渲染进行了优化。
更多参考:http://rachelappel.com/use-viewmodels-to-manage-data-amp-organize-code-in-asp.net-mvc-applications