Asp.net mvc 3.0新特性-浅析1

简介:

(1)首先我们在新建---项目时,在mvc3.0中我们有三种选择:

  

在新建mvc3.0项目时,如果我们选择了aspx,那么我们新建的视图文件扩展名就是.aspx。如果我们选择了Razor,那么我们新建的视图文件扩展名就是.cshtml。

http://msdn.microsoft.com/zh-cn/ff849693.aspx中给了我们很好的关于Razor这种新视图引擎的介绍。

(2)mvc3.0中Web.config文件中有几处变化,例如:

 <compilation debug="true" targetFramework="4.0">
      <assemblies>
        <add assembly="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
        <add assembly="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
        <add assembly="System.Web.Mvc, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
      </assemblies>
    </compilation>

版本号的变化:由原来的System.Web.Mvc, Version=2.0.0.0变成了现在的System.Web.Mvc, Version=3.0.0.0;

还有就是

这是在mvc2.0中的。下面是mvc3.0中的:

 <compilation debug="true" targetFramework="4.0">
      <assemblies>
        <add assembly="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
        <add assembly="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
        <add assembly="System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
      </assemblies>
    </compilation>

这就是mvc3.0在Web.config文件中两处较为明显的改变啊!

(3)我们都知道在mvc2.0及1.0更早的版本中,我们在使用ViewData时必须是:

public ActionResult Index() {

    ViewData["Title"] = "The Title";

    ViewData["Message"] = "Hello World!";

}

那么在mvc3.0版本中,我们就可以用如下方法:

public ActionResult Index() {

    ViewModel.Title = "The Title";

    ViewModel.Message = "Hello World!";

}

这就是mvc3.0中其中一大改变啊!

(4)在"Add View"对话框中也有所改变。

  

我们可以在视图引擎有两种选择啊!aspx和Razor。

(5)Global.asax中的变化。在mvc2.0版本中Application_Start()是如下定义的:

protected void Application_Start()

        {

            AreaRegistration.RegisterAllAreas();

 

            RegisterRoutes(RouteTable.Routes);

        }

在mvc3.0版本中Application_Start()是如下定义的:

protected void Application_Start()

        {

            AreaRegistration.RegisterAllAreas();

 

            RegisterGlobalFilters(GlobalFilters.Filters);

            RegisterRoutes(RouteTable.Routes);

        }

此外如果我们想使用action filter,那么我们必须在Application_Start中添加:

GlobalFilters.Filters.Add(new MyActionFilter());

(6)New JsonValueProviderFactory Class变化

    如果我们想了解更多关于JsonValueProviderFactory的信息,可以在Sending JSON to an ASP.NET MVC Action Method Argument 这篇博客中获得非常详细的信息啊!





 本文转自 王祖康 51CTO博客,原文链接:http://blog.51cto.com/wzk89/406674,如需转载请自行联系原作者

相关文章
|
3月前
|
开发框架 前端开发 .NET
ASP.NET CORE 3.1 MVC“指定的网络名不再可用\企图在不存在的网络连接上进行操作”的问题解决过程
ASP.NET CORE 3.1 MVC“指定的网络名不再可用\企图在不存在的网络连接上进行操作”的问题解决过程
41 0
|
1月前
|
开发框架 前端开发 .NET
进入ASP .net mvc的世界
进入ASP .net mvc的世界
29 0
|
1月前
mvc.net分页查询案例——mvc-paper.css
mvc.net分页查询案例——mvc-paper.css
5 0
|
1月前
|
开发框架 前端开发 .NET
C# .NET面试系列六:ASP.NET MVC
<h2>ASP.NET MVC #### 1. MVC 中的 TempData\ViewBag\ViewData 区别? 在ASP.NET MVC中,TempData、ViewBag 和 ViewData 都是用于在控制器和视图之间传递数据的机制,但它们有一些区别。 <b>TempData:</b> 1、生命周期 ```c# TempData 的生命周期是短暂的,数据只在当前请求和下一次请求之间有效。一旦数据被读取,它就会被标记为已读,下一次请求时就会被清除。 ``` 2、用途 ```c# 主要用于在两个动作之间传递数据,例如在一个动作中设置 TempData,然后在重定向到另
99 5
|
3月前
|
XML 前端开发 定位技术
C#(NET Core3.1 MVC)生成站点地图(sitemap.xml)
C#(NET Core3.1 MVC)生成站点地图(sitemap.xml)
25 0
|
3月前
|
前端开发
.net core mvc获取IP地址和IP所在地(其实是百度的)
.net core mvc获取IP地址和IP所在地(其实是百度的)
124 0
|
5月前
|
开发框架 自然语言处理 前端开发
基于ASP.NET MVC开发的、开源的个人博客系统
基于ASP.NET MVC开发的、开源的个人博客系统
52 0
|
8月前
|
SQL 开发框架 前端开发
[回馈]ASP.NET Core MVC开发实战之商城系统(完:内附源码)
经过一段时间的准备,【ASP.NET Core MVC开发实战之商城系统】已经完成,目前代码已开发完成,先将全部内容整理分享,如有不足之处,还请指正。
107 0
|
8月前
|
存储 开发框架 前端开发
[回馈]ASP.NET Core MVC开发实战之商城系统(五)
经过一段时间的准备,新的一期【ASP.NET Core MVC开发实战之商城系统】已经开始,在之前的文章中,讲解了商城系统的整体功能设计,页面布局设计,环境搭建,系统配置,及首页【商品类型,banner条,友情链接,降价促销,新品爆款】,商品列表页面,商品详情等功能的开发,今天继续讲解购物车功能开发,仅供学习分享使用,如有不足之处,还请指正。
116 0
|
9月前
|
开发框架 前端开发 .NET
[回馈]ASP.NET Core MVC开发实战之商城系统(三)
[回馈]ASP.NET Core MVC开发实战之商城系统(三)
67 0