http://blog.csdn.net/wangdan199112/article/details/41595397
何谓MVC(Model View Controller):M是指业务模型,V是指用户界面,C则是控制器,使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式。比如统计学生数据可以分别用柱状图、饼形图来表示。C存在的目的则是确保M和V的同步,一旦M改变,V应该同步更新。
它的具体操作过程如下所示:
模型(Model) “数据模型”(Model)用于封装与应用程序的业务逻辑相关的数据以及对数据的处理方法。“模型”有对数据直接访问的权力,例如对数据库的访问。“模型”不依赖“视图”和“控制器”,也就是说,模型不关心它会被如何显示或是如何被操作。但是模型中数据的变化一般会通过一种刷新机制被公布。为了实现这种机制,那些用于监视此模型的视图必须事先在此模型上注册,从而,视图可以了解在数据模型上发生的改变.
视图(View) 视图层能够实现数据有目的的显示(理论上,这不是必需的)。在视图中一般没有程序上的逻辑。为了实现视图上的刷新功能,视图需要访问它监视的数据模型(Model),因此应该事先在被它监视的数据那里注册。
控制器(Controller) 控制器起到不同层面间的组织作用,用于控制应用程序的流程。它处理事件并作出响应。“事件”包括用户的行为和数据模型上的改变。
下面用一个例子来对MVC进行解释:
创建一个项目如下图所示:
右击Controller文件夹,新建一空Controller,命名为HelloWorld,将代码改为如下:
[csharp]view plaincopy
publicclassHelloWorldController : Controller
{
publicstringIndex()
{
return"Hello world";
}
publicstringHello()
{
return"Hello everyone";
}
publicstringHello2(stringname)
{
return"Hello to you "+ name;
}
}
右击添加视图:
在新建的视图中添加代码:(结合了css+div)
[csharp]view plaincopy
@using自动导入程序集.Models
@{
Layout =null;
}
Index
#tblist {
border: 1px solid #0094ff;
width: 600px;
margin: 10px auto;
border-collapse: collapse;
}
#tbList th, td {
border: 1px solid #0094ff;
padding: 10px;
}
function del(id) {
if(confirm("您确定要删除吗?亲~~")) {
window.location ="/home/del"+ id;
}
网友评论