我在ASP.Net MVC(.Net 4.0)中使用T4MVC
模板。
到目前为止,只要我习惯在项目中添加新文件(如控制器,视图等),这个文件就会自动更新。
但出于某种原因,它已停止更新。我刚刚将新文件夹添加到项目中,包含3个aspx
文件以及相关的控制器和模型。但是T4MVC仍然没有显示这些东西,编译器会为丢失的东西提供错误。
有人可以帮我弄清楚原因吗?
谢谢!
答案 0 :(得分:17)
T4MVC不会自行更新。
您必须右键单击解决方案资源管理器中的.tt
文件,然后单击运行自定义工具。
执行此操作时,您的解决方案也将进行编译。
T4MVC将所有控制器方法更改为虚拟,并为它们写入覆盖。所以当你编译某个时候,T4MVC会有编译错误,这可能是因为你重命名或更改了控制器中方法的签名。从T4MVC中删除此方法,然后单击运行自定义工具以重新生成。
有关T4MVC的详细信息,请参阅此答案:
ASP.NET MVC3 How to reference views directly from controller
答案 1 :(得分:5)
这是正确的,但如果您安装Chirpy(chirpy.codeplex.com),它可以自动更新T4MVC。
AutoT4MVC是一个不错的小重量选项,可以自动运行自定义工具。
虽然只有T4MVC,但如果你将Chirpy用于其他东西,它可能值得保留。
答案 2 :(得分:3)
如果你想自动运行t4mvc签出这个Visual Studio pugin http://chirpy.codeplex.com/。它还具有非常好的其他功能。