MVC

什么是MVC (模型 视图 控制器)?

mvc是一个架构模式,它分离表现与交互。它被分为3个核心部件:模型、视图、控制器。

下面是每一个部件的分工:

 1)视图是用户看到的并与之交互的界面

2)模型表示业务的数据,并提供数据给视图

3)控制器接受用户输入并调用模型和视图去完成用户的需求

 

MVC的完整流程

下面是MVC(模型、视图、控制器)架构的控制流程:

  • 所有的终端用户请求被发送到控制器
  • 控制器依赖请求去选择加载哪个模型,并把模型附加到对应的视图
  • 附加了模型数据的最终视图做为响应发送给终端用户

MVC同时适用于Windows应用和Web应用吗?

相比Windows应用,MVC架构更适用于Web应用。对于Windows应用,MVP(Model View Presenter )架构更好一点。如果你使用WPF和Silverlight,MVVM更适合。

使用MVC有哪些好处?

MVC有两个大的好处:

  • 分离了关注点。后台代码被移到单独的类文件,我们可以最大限度的重复利用代码。
  • 自动化UI测试成为可能,因为后台代码移到了.NET类。这让我们更容易做单元测试和自动化测试。

MVC不同于三层架构?

MVC是三层传统架构的演变。三层架构和MVC有一些通用的组成部分。 显示如下:

功能性 三层 / 分层架构 Model view controller architecture
显示与交互 用户界面 视图
UI逻辑 用户界面 控制器
商业逻辑 / 验证 中间层 模型
请求首先发送给谁? 用户界面 控制器
访问数据 数据链接层 数据链接层
 

 

MVC的路由选择是什么?

路由选择功能帮你定义一个URL规则,映射URL到控制器。

举一个例子,我们想让用户输入“ http://localhost/View/ViewCustomer/ ”时,它转向到“Customer”控制器并且调用 DisplayCustomer 。这个通过Maproute方法来定义。代码如下:

routes.MapRoute( "View", // Route name "View/ViewCustomer/{id}", // URL with parameters new { controller = "Customer", action = "DisplayCustomer", id = UrlParameter.Optional }); // Parameter defaults

posted @ 2018-02-04 14:57  wwlww  阅读(130)  评论(0编辑  收藏  举报