【原创】Mvc学习笔记(1)
1.新建MVC4项目

在MVC4中有App_Data文件夹,这个文件夹里可以放一些重要的数据,比如说数据库的mdf文件等等,这个文件夹非常安全,因为这个文件夹不允许被别人下载,不允许被浏览器访问。
App_Start文件夹存放着4个配置类,例如RouteConfig.cs,这个是配置路由规则的
Global.asax文件里有Application_Start(),这个方法是在网站第一次被访问的时候调用的。
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas(); WebApiConfig.Register(GlobalConfiguration.Configuration);
FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
//注册路由,在网站被请求的时候只注册一次
RouteConfig.RegisterRoutes(RouteTable.Routes);
BundleConfig.RegisterBundles(BundleTable.Bundles);
}
MVC Razor模版介绍
在ASPX模块里我们使用的是<%%>,然而在Razor模版里面我们使用@符号。
在Razor模版里我们使用 @{},这里表示一个代码段,意思是在”{}”里面写C#代码,Razor模版引擎的强大之处在于,它会自动识别<>符号,认为“<>”代表html代码,用@符号输出
例如:
@{
string msg = "哈哈";
<input type="text" value="@msg" />
@msg
<text>你好</text>
}
因为Razor视图引擎识别<>,但是我们就像在html页面上的代码段里(@{})输出 “你好”这个文字的话,有什么好的办法吗?可能你会想到使用标签 <span>你好</span>,假如我们要求不能使用标签的话呢,那么我们就要使用<text>你好</text>,这个是模版提供的原样文字的,不带标签。
MVC开发的优点
- 开发速度快 在使用MVC4+EF 开发简直爽歪歪
- 运行速度快 因为MVC和WebForm共用一套框架就是ASP.NET,但是在事件管道的第11和12事件之间,MVC在第7个事件创建的MvcHandler会调用ProcessRequest方法,去请求Url获取Controller和Action,渲染Html返回给浏览器。不像WebForm在第11和12事件之间调用PR方法,创建页面空间树。这样大大加快了网站的运行速度
- 加上Mono可以在Linux系统上运行
MVC跟三层区别
相信很多童靴在面试中经常被问道MVC与三层区别,首页MVC是表现层的开发方式,跟三层没有关系,MVC就是一个表现层的设计模式,用来把UI(界面)和业务代码脱离开的一种开发方式。
MVC小知识
在MVC里控制器里面的方法如果想要被浏览器访问的话,必须定义为public,控制器类也必须是public,否则不能被访问,而且控制器类名一定要以Controller结尾并且继承于Controller类,因为在ASP.NET MVC中,约定控制器必须以Controller结尾继承于Controller,但是你也可以不这样,但是需要配置,但是尽量按照约定来,这样的话很方便,这就是所谓的约定大于配置。
【原创】Mvc学习笔记(1)的更多相关文章
- MVC学习笔记索引帖
[MVC学习笔记]1.项目结构搭建及单个类在各个层次中的实现 [MVC学习笔记]2.使用T4模板生成其他类的具体实现 [MVC学习笔记]3.使用Spring.Net应用IOC(依赖倒置) [MVC学习 ...
- ASP.NET MVC学习笔记-----Filter2
ASP.NET MVC学习笔记-----Filter(2) 接上篇ASP.NET MVC学习笔记-----Filter(1) Action Filter Action Filter可以基于任何目的使用 ...
- ASP.NET MVC学习笔记-----Filter
ASP.NET MVC学习笔记-----Filter(1) Filter类型 接口 MVC的默认实现 Description Authorization IAuthorizationFilter Au ...
- Spring MVC 学习笔记一 HelloWorld
Spring MVC 学习笔记一 HelloWorld Spring MVC 的使用可以按照以下步骤进行(使用Eclipse): 加入JAR包 在web.xml中配置DispatcherServlet ...
- .NET MVC 学习笔记(一)— 新建MVC工程
一..NET MVC 学习笔记(一)—— 新建MVC工程 接触MVC有段时间了,一直想找机会整理一下,可是限于文笔太差,所以一直迟迟羞于下手,想到最近做过的MVC项目也有一些了,花点时间整理一下方便以 ...
- Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建
Spring MVC 学习笔记12 -- SpringMVC+Hibernate开发(1)依赖包搭建 用Hibernate帮助建立SpringMVC与数据库之间的联系,通过配置DAO层,Service ...
- Spring MVC 学习笔记11 —— 后端返回json格式数据
Spring MVC 学习笔记11 -- 后端返回json格式数据 我们常常听说json数据,首先,什么是json数据,总结起来,有以下几点: 1. JSON的全称是"JavaScript ...
- Spring MVC 学习笔记10 —— 实现简单的用户管理(4.3)用户登录显示全局异常信息
</pre>Spring MVC 学习笔记10 -- 实现简单的用户管理(4.3)用户登录--显示全局异常信息<p></p><p></p>& ...
- Spring MVC 学习笔记9 —— 实现简单的用户管理(4)用户登录显示局部异常信息
Spring MVC 学习笔记9 -- 实现简单的用户管理(4.2)用户登录--显示局部异常信息 第二部分:显示局部异常信息,而不是500错误页 1. 写一个方法,把UserException传进来. ...
- Spring MVC 学习笔记8 —— 实现简单的用户管理(4)用户登录
Spring MVC 学习笔记8 -- 实现简单的用户管理(4)用户登录 增删改查,login 1. login.jsp,写在外面,及跟WEB-INF同一级目录,如:ls Webcontent; &g ...
随机推荐
- IC芯片
5.8寸显示屏/LB058WQ1(SD)01LG2 74HC04 0.3NXP10K 74HC138 0.37NXP20K 74HC245 0.52NXP30K 74HC595 明威 ...
- 解决Visual Studio 2010新建工程时出现『1>LINK : fatal error LNK1123: failure during conversion to COFF: file invalid or corrupt』错误
VS2010在经历一些更新后,建立Win32 Console Project时会出"error LNK1123" 错误. 解决方案为: 第一步:将:项目|项目属性|配置属性|清 ...
- 常见android手机分辨率
4:3 VGA 640*480 (Video Graphics Array) QVGA 320*240 (Quarter VGA) HVGA 480*320 (Half-size VGA) ...
- Socket解决粘包问题2
在AsynServer中对接收函数增加接收判断,如果收到客户端发送的请求信息,则发送10个测试包给发送端,否则继续接收,修改后的接收代码如下: private void AsynReceive() { ...
- 玩转Android之Drawable的使用
Drawable天天用,可你是否对Drawable家族有一个完整的认知?今天我们就来系统的学习一下Drawable的使用. 1.概述 用过Drawable的筒子都知道Drawable有很多种,有的时候 ...
- AIR lame参数配置
-Duser.name=Z.yu 固定码率的例子:=======================================================================固定码率 ...
- javascript进击(六)Jquery
引用 jQuery 如需测试 JavaScript 库,您需要在网页中引用它. 为了引用某个库,请使用 <script> 标签,其 src 属性设置为库的 URL: <!DOCTYP ...
- Java并发——线程安全、线程同步、线程通信
线程安全 进程间"共享"对象 多个“写”线程同时访问对象. 例:Timer实例的num成员,即add()方法是用的次数.即Timer实例是资源对象. class TestSync ...
- VS2010数据库连接问题
我用SQL server 2008写了一个小表格,运行VS的前选择了 工具-连接数据库,然后选择了那个表格的名称.运行后出现如下错误提示,请问是哪里出了问题呢? 数据库连接版本有问题.在VS中把信用数 ...
- Apache Avro 与 Thrift 比较
http://www.tbdata.org/archives/1307 Avro和Thrift都是跨语言,基于二进制的高性能的通讯中间件. 它们都提供了数据序列化的功能和RPC服务. 总体功能上类似, ...