MVC初了解
MVC:Model-View-Controller,将数据和显示形式分离。
Model:能够看做是三层中的D层+B层,实现业务逻辑和与数据库的交互。
View:看做是U层,用来显示数据。
Controller:用来调节M和V,决定调用哪个Model处理数据,载入那个视图显示数据。
那么这三层究竟是怎样工作的呢?
比如要用户要查看相关的数据,在浏览中以表格形式显示。
在执行程序时,首先是Controller调用Model层的方法,Model进行详细的业务逻辑实现与数据库进行交互。查到相关的数据。然后返回数据给Controller。Controller接收数据。然后调用View进行显示。
在VS中使用时,首先须要建立一个MVC,在项目下会相应的生成三个目录,例如以下图:
在使用时要注意一下三点:
1、首先建立Controller,须要注意的是:在.net的MVC框架里有这种约定:控制器在命名时“Controller”必须保留,例如以下图:
2、在建立完成之后能够在控制器中调用Model中的方法对数据进行处理,然后将数据返回给View层进行显示,那么视图应该怎样的建立呢?当在Controller须要调用使用进行数据显示的时候。在相应的方法名称处右击——加入视图。这样在Views的目录中就会生成一个和Controller同名的目录,例如以下图所看到的:
3、在目录下会生成一个视图(该视图一般也方法名同名。也可不同样),例如以下图:
小结
MVC和我们之前学过的三层有异曲同工之处。都是为了更好的解耦合,仅仅是MVC相当于是对三层中的UI层再进行分层。使得数据显示和业务逻辑分开,不像是aspx后后台写好代码,然后使用控件进行绑定数据,这样逻辑就是写死在固定的页面中的。假设一个要所改动,相应的还有一个也须要做改动。
使用MVC能够使显示和业务逻辑分离
刚開始学习学习MVC感觉它和三层、apsx都有可比性,如今体会还不深刻。继续完好吧!
MVC初了解的更多相关文章
- ASP.NET MVC 初体验
MVC系列文章终于开始了,前段时间公司项目结束后一直在封装一个html+ashx+js+easyui的权限系统,最近差不多也完成了,迟些时候会分享源码给大家.当然这个MVC系列结束后如果时间允许还会另 ...
- MVC初认
初探MVC 何谓MVC 简单来说就是开发程序时所使用的一种“架构(框架)”.它就是开发的一种观念,或者说是存在已久的设计规则.我们知道在开发过程中总会伴随着需求.技术.客户.老板等因素的变化,给开发带 ...
- MVC – 4.mvc初体验(2)
5.显示学员列表 效果 数据表 5.1 首先,在文件夹Models新建一个新建项(W),选择ADO.NET 实体数据模型 (SingleTest.edmx) 5.2 建一个控制器,StudentsCo ...
- MVC – 4.mvc初体验(1)
1.MVC请求模式 2.MVC简单请求流程图 展开 折叠 3.返回string的mvc方法 展开 折叠 4.加载视图的方法
- maven+spring mvc初尝试
只是一个可以运行的例子,俺们来看看. 目录结构: pom.xml <project xmlns="http://maven.apache.org/POM/4.0.0" xml ...
- 第23章 Spring MVC初体验
23.1 鸟瞰Spring MVC 粗略的介绍了SpringMVC的主要组成部分,SpringMVC作为一个Web层的框架,最大的作用是把我从繁重的web.xml文件编写中解救出来,再也不要不停的添加 ...
- MVC – 4.mvc初体验(2)
5.显示学员列表 效果 数据表 5.1 首先,在文件夹Models新建一个新建项(W),选择ADO.NET 实体数据模型 (SingleTest.edmx) 5.2 建一个控制器,StudentsCo ...
- MVC – 4.mvc初体验(1)
1.MVC请求模式 2.MVC简单请求流程图 展开 折叠 3.返回string的mvc方法 展开 折叠 4.加载视图的方法
- ASP.NET MVC学习---(五)MVC初体验
经过之前n多的铺垫 我们已经大概了解了这个姓m名vc的家伙了 那么今天我们就来体验一把 怎么体验呢? 就来做一个小例子吧~ mvc增删改查的例子 数据库还是之前我们的老朋友 关系图: 表中的数据已填好 ...
- ASP.NET MVC学习---(四)MVC初窥
前面三篇大幅度的介绍了EF框架 这并不是没有道理的 现在使用mvc开发一般都离不开ef 因为它们相结合可以为你带来完美的体验 当然 前面所描述的仅仅是ef框架的冰山一角 它是一门学问很深的功课 如果你 ...
随机推荐
- vs2017 出现“文件中的类都不能进行设计,因此未能为该文件显示设计器”问题处理
今天拷贝了以前的一个项目.打算出一个新版本. 但是拷贝了sln文件后,去除掉以前的项目,新增了一个 winfrom项目中 出现了:文件中的类都不能进行设计,因此未能为该文件显示设计器.错误 百度了一 ...
- [ARC082F] Sandglass(线段树)
Description 有一个沙漏由两个上下相通玻璃球 \(A\) 和 \(B\) 构成,这两个玻璃球都含有一定量的沙子,我们暂且假定 \(AB\) 中位于上方的玻璃球的为 \(U\),下方的玻璃球为 ...
- t4-editor使用方法 Visual T4
原文发布时间为:2011-05-17 -- 来源于本人的百度文章 [由搬家工具导入] http://visualstudiogallery.msdn.microsoft.com/40a887aa-f3 ...
- 【简单的原创】div简单轮换显示
原文发布时间为:2009-05-10 -- 来源于本人的百度文章 [由搬家工具导入] <html><head><title>div简单轮换显示</title& ...
- unused function warning message
這篇的對象是 static function, static function 若沒有其它 function 去存取的話, 在 compile 時,會發生 unused error, 可以在 func ...
- hdu 4517(递推枚举统计)
小小明系列故事——游戏的烦恼 Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others)To ...
- react-transition-group v2 用法概述
官方文档地址:https://reactcommunity.org/react-transition-group/ 在react-transition-group v2中,暴露了三个组件: Trans ...
- ZOJ 3593.One Person Game-扩展欧几里得(exgcd)
智障了,智障了,水一水博客. 本来是个水题,但是for循环遍历那里写挫了... One Person Game Time Limit: 2 Seconds Memory Limit: 655 ...
- L1-8 外星人的一天
L1-8 外星人的一天(15 point(s)) 地球上的一天是 24 小时.但地球上还有一些精力和勤奋度都远超一般人的大神级人物,他们的“一天”是以 48 小时为周期运转的,这种人被人们尊称为“外星 ...
- 列表的 sort
题目:输入三个整数x,y,z,请把这三个数由小到大输出. 实例 #!/usr/bin/python # -*- coding: UTF-8 -*- l = [] for i in range(3): ...