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,如需转载请自行联系原作者

相关文章
|
6月前
|
开发框架 .NET API
.NET 10首个预览版发布:重大改进与新特性概览!
.NET 10首个预览版发布:重大改进与新特性概览!
175 3
.NET 10首个预览版发布:重大改进与新特性概览!
|
人工智能 开发框架 .NET
.NET技术的强大功能:.NET技术的基础特性、在现代开发中的应用、以及它如何助力未来的软件开发。
.NET技术是软件开发领域的核心支柱,以其强大功能、灵活性及安全性广受认可。本文分三部分解析:基础特性如多语言支持、统一运行时环境;现代应用如企业级与Web开发、移动应用、云服务及游戏开发;以及未来趋势如性能优化、容器化、AI集成等,展望.NET在不断变化的技术环境中持续发展与创新。
318 4
|
7月前
|
人工智能 机器人
D1net阅闻 | 谷歌DeepMind研究发现LLM新特性
D1net阅闻 | 谷歌DeepMind研究发现LLM新特性
|
9月前
|
监控 前端开发 API
一款基于 .NET MVC 框架开发、功能全面的MES系统
一款基于 .NET MVC 框架开发、功能全面的MES系统
215 5
|
10月前
|
自然语言处理 物联网 图形学
.NET 技术凭借其独特的优势和特性,为开发者们提供了一种高效、可靠且富有创造力的开发体验
本文深入探讨了.NET技术的独特优势及其在多个领域的应用,包括企业级应用、Web应用、桌面应用、移动应用和游戏开发。通过强大的工具集、高效的代码管理、跨平台支持及稳定的性能,.NET为开发者提供了高效、可靠的开发体验,并面对技术更新和竞争压力,不断创新发展。
397 7
|
10月前
|
开发框架 .NET C#
.NET 技术凭借高效开发环境、强大框架支持及跨平台特性,在软件开发中占据重要地位
.NET 技术凭借高效开发环境、强大框架支持及跨平台特性,在软件开发中占据重要地位。从企业应用到电子商务,再到移动开发,.NET 均展现出卓越性能,助力开发者提升效率与项目质量,推动行业持续发展。
201 4
|
11月前
|
JSON C# 开发者
C#语言新特性深度剖析:提升你的.NET开发效率
【10月更文挑战第15天】C#语言凭借其强大的功能和易用性深受开发者喜爱。随着.NET平台的演进,C#不断引入新特性,如C# 7.0的模式匹配和C# 8.0的异步流,显著提升了开发效率和代码可维护性。本文将深入探讨这些新特性,助力开发者在.NET开发中更高效地利用它们。
152 1
|
11月前
|
存储 编译器
.Net特性Attribute的高级使用
【10月更文挑战第14天】在.NET中,特性(Attribute)是一种强大的机制,用于在代码中添加元数据。本文介绍了特性的高级用法,包括自定义特性、通过反射读取特性、条件编译与特性结合、多个特性应用以及特性继承。通过示例展示了如何创建自定义特性类、应用自定义特性,并通过反射获取特性信息。此外,还介绍了如何利用条件编译符号实现不同版本的代码控制,以及如何在一个代码元素上应用多个特性。最后,探讨了如何通过`AttributeUsage`控制特性的继承行为。
246 1
|
开发框架 前端开发 JavaScript
ASP.NET MVC 教程
ASP.NET 是一个使用 HTML、CSS、JavaScript 和服务器脚本创建网页和网站的开发框架。
194 7
|
存储 开发框架 前端开发
ASP.NET MVC 迅速集成 SignalR
ASP.NET MVC 迅速集成 SignalR
213 0