我已经使用T4MVC已经有一段时间了,并且喜欢"显式HtmlHelpers用于渲染部分"功能,默认情况下它已关闭.我使用的是T4MVC 2.6.40版.
我最近升级到MVC3并注意到没有为Razor partials生成明确的HtmlHelpers,所以我查看了T4MVC文本模板的源代码,并找到了一个名为"GetPartials"的方法,它有一行代码如下:
var parts = GetControllers()
.Select(m => m.ViewsFolder)
.SelectMany(m => m.Views)
.Where(m => m.Value.EndsWith(".ascx"));
Run Code Online (Sandbox Code Playgroud)
所以很明显Razor视图不受支持.
我还想提一下,当运行T4模板(右键单击>运行自定义工具)时,我收到编译器警告:"不再支持C#2.0和C#3.5编译器.模板将始终使用版本编译4编译器而不是指定的'v3.5'."
这涉及第18行,其中模板语言属性具有值"C#v3.5".为什么必须有明确的版本依赖?它不只是"C#"吗?
在一篇文章中提出两个单独的问题的道歉.