MVC系列之一 入门概述
一 概述
MVC作为一种当前比较好的开发web的框架,不得不提一下了,和WebForm比较来看,有了很大的进步和改进。
先进行一个简单的比较,两个都是Web开发框架,理念仍然是较快速开发。
不过MVC已经几乎摒弃了臃肿的服务端控件,采用更为简洁和可定义的标签形式。前台View视图和后台Controller控制器弱耦合分离的形式,比Asp.Net前台后台采用继承的紧耦合形式更加灵活和合理。
二 基本三元素介绍
MVC不得不说的三个主要元素,就是Model,View,Controller这三个元素。下面简单地一一介绍下:
Model:这是主要负责数据库和Controller控制器交互
View视图:这是主要负责展示Controller传输给他的数据
Controller控制器:主要接受Model传过来的数据,然后传给View
画个图吧,好看些

BLL,DAL,Models是简单三层的概念,写出来防止大家把Model和Models弄混了,这里的Model可是包括了这三个的
三 创建一个简单的项目Demo
在这里,我还是比较喜欢使用项目来学习,理论讲一部分就好了,更多的理解,就通过项目来学习吧
环境:
VS2010时需要去下载独立的MVC安装包的,不是很复杂,百度可以告诉你一切
VS2012时就不需要下任何安装包了,直接就可以新建MVC项目了

然后选择MVC 4,创建一个空白的MVC项目就可以了,凡事从简单入手嘛!
看到这个目录,里面很简单,除了之前讲的三个基本元素,View,Controller,Model ,剩下的App_Data放私有权限的东西,比如数据;App_Start存放的一些重要的初始化类,后面再详细讲;Global.asax是应用程序文件,主要负责管道事件,后面详细讲;剩下的几个config就是简单的配置文件;
四 Controller控制器
在Controllers右键添加控制器,默认使用HomeController,注意:后缀一定要是Controller,在MVC有时候约定大于配置,某些约定的配置就是这么默认的,不要轻易更改。
请注意,这里开始讲解配置会比较多,理念的理解还是主要是开头的理念,Controller的作用这里就不再累赘了。

在新建的Controller里面有一个,Index,这是其中的一个Action的名字,在这里Action的含义是动作,可以理解为页面的各种动作,Index就是默认的一个动作。
在Index上面右击,添加视图,视图的名字默认和Action是一样的,不用修改,目前选择使用Aspx视图引擎,先不要模版。
添加后跳到了Index.aspx页面,这是一个HTML的世界,当你习惯性地打开工具箱的时候,你会发现,工具箱中的控件少得可怜,没有那些强大的服务端控件,没有了那些拖慢了aspx页面的服务端控件,剩下的只有简单的html。
让我们简单的写点上去,Hello World必须写,你懂的,运行起来吧小宇宙。。。。。

这里要看到一个:URL地址,默认其实是localhost:7777,我现在写的是补全后的地址。
Home是我们的控制器的名字,Index是我们Action的名字,相信朋友们应该发现一点MVC的奥秘了吧
对,没错,你们想得没错,MVC在这里的里面,是用 Controller+Action 确定访问地址,简单粗暴,嘿嘿....
五 Controller+Action
刚才讲到了访问地址,下面呢,我们再讲一点,页面跳转的知识,后面我们再进行别的问题的深入。
在刚开始学习MVC的时候,对Controller和Action的理解一般都会比较模糊,下面的几个例子来看下:
在Home控制器下新建一个Action

并且添加视图,在新建的试图里面写点东西
回到我们的Index视图中,

运行,点击我们的Link to MyAction

在此看地址,已经更改了,其实这种没有后缀的形式,在<a>的链接属性方面还是没有什么差别的。
再来看一个,更强大的东西,传说中的HtmlHelper:
<div>
Hello World,MVC,I'm JamesZhu.
<hr/>
<a href="/Home/MyAction">Link to MyAction</a>
<hr/>
<% Html.ActionLink("Link to MyAction", "MyAction", "Home"); %>
</div>
可以达到同样的效果,嘿嘿,Html这是一个很强大的东西,后面再深入讲,今天写到这里了,嘿嘿
四 总结
稍微总结下,这篇文章,主要时候有一定web开发经验,熟悉html前端,以及asp.net,然后又想学习mvc的朋友,可以借鉴下。
声明
本文主要是个人学习MVC后的一些经验以及看法,仅供参考,如有错误,欢迎指正,谢谢。
个人感觉:在学习MVC之前,最好有以下知识储备:HTML,Jquery,Ajax,Asp.Net等技术基础
MVC系列之一 入门概述的更多相关文章
- Spring MVC系列-(1) Spring概述
1. Spring概述 本章主要介绍Spring中的体系结构和常见概念,比如bean.控制反转(Inverse of Control,IoC)等. 1.1 体系结构 Spring 框架提供约 20 个 ...
- ShoneSharp语言(S#)的设计和使用介绍系列(4)— 入门概述
ShoneSharp语言(S#)的设计和使用介绍 系列(4)- 入门概述 作者:Shone 声明:原创文章欢迎转载,但请注明出处,https://www.cnblogs.com/ShoneSharp. ...
- EF和MVC系列文章导航:EF Code First、DbContext、MVC
对于之前一直使用webForm服务器控件.手写ado.net操作数据库的同学,突然来了EF和MVC,好多新概念泉涌而出,的确犹如当头一棒不知所措.本系列文章可以帮助新手入门并熟练使用EF和MVC,有了 ...
- MVC系列——MVC源码学习:打造自己的MVC框架(一:核心原理)
前言:最近一段时间在学习MVC源码,说实话,研读源码真是一个痛苦的过程,好多晦涩的语法搞得人晕晕乎乎.这两天算是理解了一小部分,这里先记录下来,也给需要的园友一个参考,奈何博主技术有限,如有理解不妥之 ...
- Apache Shiro系列之五,概述 —— 配置
Shiro设计的初衷就是可以运行于任何环境:无论是简单的命令行应用程序还是复杂的企业集群应用.由于运行环境的多样性,所以有多种配置机制可用于配置,本节我们将介绍Shiro内核支持的这几种配置机制. ...
- Apache Shiro系列四,概述 —— Shiro的架构
Shiro的设计目标就是让应用程序的安全管理更简单.更直观. 软件系统一般是基于用户故事来做设计.也就是我们会基于一个客户如何与这个软件系统交互来设计用户界面和服务接口.比如,你可能会说:“如 ...
- .NET 4 并行(多核)编程系列之一入门介绍
.NET 4 并行(多核)编程系列之一入门介绍 本系列文章将会对.NET 4中的并行编程技术(也称之为多核编程技术)以及应用作全面的介绍. 本篇文章的议题如下: 1. 并行编程和多线程编程的区别. ...
- Easyui + asp.net MVC 系列教程 完成登录
Easyui + asp.net MVC 系列教程 第09-17 节 完成登录 高清录制 前面八节 在这里 Easyui + asp.net mvc + sqlite 开发教程(录屏)适合入门 在接下 ...
- Spring mvc系列一之 Spring mvc简单配置
Spring mvc系列一之 Spring mvc简单配置-引用 Spring MVC做为SpringFrameWork的后续产品,Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块 ...
随机推荐
- HDU 4898 The Revenge of the Princess’ Knight(后缀数组+二分+暴力)(2014 Multi-University Training Contest 4)
Problem Description There is an old country and the king fell in love with a devil. The devil always ...
- mac tomcat
alampsdeMacBook-Pro:bin alamps$ ./startup.sh Using CATALINA_BASE: /Users/alamps/Library/apache-tomca ...
- 【NOIP模拟赛】秦时明月
秦时明月 (sword.cpp/c/pas) [问题描述] 卫庄与盖聂又要论剑了,因为渊虹和鲨齿都是天下名剑,论剑容易互相损伤,太过可惜,于是两位换了两把木剑.因为木剑质地不匀,剑的每一段都有一个 ...
- CentOS:安装桌面GNOME图形化界面
u盘安装dvd版的CentOS7后,没有桌面,浏览器也是黑框版的:如果需要桌面的话,下面三条命令即可:但是安装桌面后,系统会没有之前纯净: 1 安装Gnome包: sudo yum groupinst ...
- linux终端使用技巧
Shift+Ctrl+T:新建标签页Shift+Ctrl+W:关闭标签页Ctrl+PageUp:前一标签页Ctrl+PageDown:后一标签页Shift+Ctrl+PageUp:标签页左移Shift ...
- javaWeb 使用jsp开发 html过滤标签
1.jsp调用代码 <t:htmlFilter> <a href="${pageContext.request.contextPath }/index.jsp"& ...
- Redis 转
Redis 简介 Redis实践 Redis命令总结
- 【Pro ASP.NET MVC 3 Framework】.学习笔记.4.MVC的主要工具-使用Moq
在之前的例子中,我们创建了FakeRepository类来支持我们的测试.但是我们还没有解释如何穿件一个真实的repository实现,我们需要一个替代品.一旦我们有一个真的实现,我们可能不会再用它, ...
- Linux下后台程序完成自动输入密码等交互行为的例子
今天要开发一个定时任务,然后加入cron列表中.但是有个问题摆在眼前,脚本的执行中需要输入数据库密码: mysql -u root -p << SQL use db; set names ...
- 4、BOM编程/正则表达式
1. BOM编程 1.1. BOM编程基础 全称 Browser Object Model,浏览器对象模型. JavaScript是由浏览器中内置的javascript脚本解释器程序来执行jav ...