在Asp.net MVC扩展包中就提供了对Castle的支持与兼容
虽然这个扩展还有很多BUG与不足,但已从其中窥见Asp.net的扩展性之一斑
扩展的下载地址:MVC Contrib on CodePlex
其中的\Samples\MvcContrib.Samples.NVelocityViewFactory\就是一个Castle使用NVelocity为脚本的示例
它与MonoRail有所不同,在于:
- 在Controller层与一般的Asp.net MVC程序编写形式相同
- 同样支持Master/Layouts但Asp.net MVC中Master要保存在Master文件夹中而Monorail则是默认保存在Layouts文件夹中
- 同样支持Helper但不要再使用类似$Html.Link或$Html.for这样的Helper了,因为它们不存在,我们要使用Asp.net MVC中提供的$Html.ActionLink
- Master的子项仍然是$childContent
- 注意,在向View传值时使用的是ViewData和TempData而没有原来的Flash之流了
BUG
Asp.net Mvc中MVCContrib中无法使用Castle的发解决方案
本系列:Asp.net Mvc Framework 系列