微软的开源 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




