ASP.NET MVC 2特性汇总

  • Jonathan Allen
  • 王瑜珩

2010 年 3 月 19 日

话题:.NETWeb框架语言 & 开发

微软的开源 MVC 框架ASP.NET MVC 2已经发布了, 它同时兼容.NET 3.5 和即将发布的.NET 4。在此版本中,新增了很多新特性:

Templated Helpers可以根据类型选择渲染模板,自动生成用于显示和编辑的 HTML。只要使用 Html.DisplayFor(expression),渲染引擎就会寻找与之相匹配的自定义模板。

区域使你可以将项目分成多个更小的、更容易管理的部分。每个区域都有独立的 model、view 和 controller。

ASP.NET 线程池的大小有一定限制,这是 ASP.NET 可伸缩性方面的一个已知问题。在 CPU 繁忙的请求不构成问题的情况下,I/O 繁忙的请求也可能会让服务器陷于 无线程可用的境地。性能计数器会告诉你服务器其实并不忙,但是却无法处理更多的请求。通过使用异步 Controller,开发人员就可以避免这种情况的发生。

Action 方法的参数可以支持默认值。在支持可选参数的语言中(VB,C# 4),可以通过语言本身实现。而在 C# 3 这样的语言中,则需要使用 DefaultValueAttribute。

DataAnnotations属性可以被用来执行基本的数据验证,这需要和 Model-Validator Providers 以及具有插件机制的客户端验证控件一同使用才能完成。

对于 REST 运动的一个窘况是,大多数浏览器实际上并不支持 REST 所需要的 HTTP verbs。通过使用 HttpMethodOverride 方法,框架会生成一个特殊的隐藏字段,以便在 AJAX 请求中模拟 REST verbs。虽然真正的请求还是一个 HTTP POST,但是框架会自动将请求映射到正确的 PUT 或 DELETE action 上去。

查看英文原文:ASP.NET MVC 2 Feature Rundown

.NETWeb框架语言 & 开发