MVC Contrib 是一个托管在 CodePlex 上面向 ASP.NET MVC 框架的贡献项目,目前该项目已经在默认的 ASPX 视图引擎之外,提供了 4 种备选视图引擎。
尽管目前的 ASP.NET MVC 框架只是一个预览版本,但一些社区志愿者已经为 MVC Contrib 项目投入了不少时间和精力。MVC Contrib 项目的目的,是在 ASP.NET MVC 框架的插件体系和扩展能力的基础上提供一些额外的功能和备选方案:
- 备选的视图引擎
- 视图的辅助组件
- 数据绑定
- 控制反转(IoC)容器控制器工厂(Controller Factories)
- 备选引导方案
- 备选的控制器基类
- Visual Studio 代码片断
- Resharper Live 模版
Jeffrey Palermo 简单描述了 4 种备选的视图引擎:
- Brail . Monorail 的 Brail 视图引擎已经被移植到了 ASP.NET MVC 框架中并加入了 MVC Contrib 项目。MonoRail 项目开发了这个视图引擎,而现在的 MVC Contrib 项目也能够与 ASP.NET MVC 框架控制器一起使用了。这个视图引擎的移植工作是由 Bill Pierce 完成的。
- NHaml . 由 Andrew Peters 提供。NHaml 为 XHTML 提供了一种 DSL。
- NVelocity . 由 Hammet 移植,目前已经加入 MVC Contrib 项目。
- XSLT . 由 Ivan Porto 提供。
他也有计划要为项目引入 SmartBag ——在控制器和视图之间传递对象时,往往需要在类型安全和灵活性之间进行权衡,而使用 SmartBag 是一个不错的平衡点。
Scott Guthrie 曾经声称“MVC 框架中的任何东西都被设计成可定制和替换的”,MVC Contrib 项目除了提供了许多功能之外,也对Scott 的话作了很好的证明。
评论