使T4MVC与ASP.NET 5一起使用

前端之家收集整理的这篇文章主要介绍了使T4MVC与ASP.NET 5一起使用前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
根据 this线程中的最新评论,现在,从Visual Studio Update 1开始,ASP.NET 5中将支持.tt模板.

哪个恕我直言会很棒,因为多年来使用T4MVC之后,我当然不想回到使用魔术字符串作为路径/视图名称(容易出错而且不重构).

但是,我无法使用ASP.NET 5 RC和Visual Studio Professional 2015 Update 1.

这是我尝试过的:

>将T4MVC NuGet(3.16.5)添加到空白的ASP.NET 5解决方案:nope,CoreCLR抱怨并且没有.tt文件添加到项目中:

Error NU1002 The dependency T4MVCExtensions 3.16.5 in project
WebApplication1 does not support framework DNXCore,Version=v5.0.

>将NuGet添加到经典的ASP.NET 4.6解决方案,并手动将T4MVC.tt,T4MVC.tt.hooks.t4和T4MVC.tt.settings.xml复制到ASP.NET 5解决方案:Visual Studio确实提供了“运行”自定义工具“在.tt文件上….

…但是运行转换会抛出NullReferenceException:

Severity    Code    Description Project File    Line    Suppression State
Error       Running transformation: System.NullReferenceException: Object reference not set to an instance of an object.
   at Microsoft.VisualStudio.TextTemplating3FE65EE761BB32C4AE5AEEB1949A6FC143551E0A56C74E6B36511A416E2DE40FB92F7CB1BC6FC7A97FF5B622AE39377BBFB9463480555898ADB8DD6D286C533D.GeneratedTextTransformation.GetProjectItem(ProjectItems items,String subPath) in c:\dev\MyApp\WebApplication3\src\WebApplication3\T4MVC.tt:line 1398
   at Microsoft.VisualStudio.TextTemplating3FE65EE761BB32C4AE5AEEB1949A6FC143551E0A56C74E6B36511A416E2DE40FB92F7CB1BC6FC7A97FF5B622AE39377BBFB9463480555898ADB8DD6D286C533D.GeneratedTextTransformation.GetProjectItem(Project project,String name) in c:\dev\MyApp\WebApplication3\src\WebApplication3\T4MVC.tt:line 1378
   at Microsoft.VisualStudio.TextTemplating3FE65EE761BB32C4AE5AEEB1949A6FC143551E0A56C74E6B36511A416E2DE40FB92F7CB1BC6FC7A97FF5B622AE39377BBFB9463480555898ADB8DD6D286C533D.GeneratedTextTransformation.ProcessAreas(Project project) in c:\dev\MyApp\WebApplication3\src\WebApplication3\T4MVC.tt:line 600
   at Microsoft.VisualStudio.TextTemplating3FE65EE761BB32C4AE5AEEB1949A6FC143551E0A56C74E6B36511A416E2DE40FB92F7CB1BC6FC7A97FF5B622AE39377BBFB9463480555898ADB8DD6D286C533D.GeneratedTextTransformation.PrepareDataToRender(TextTransformation tt) in c:\dev\MyApp\WebApplication3\src\WebApplication3\T4MVC.tt:line 557
   at Microsoft.VisualStudio.TextTemplating3FE65EE761BB32C4AE5AEEB1949A6FC143551E0A56C74E6B36511A416E2DE40FB92F7CB1BC6FC7A97FF5B622AE39377BBFB9463480555898ADB8DD6D286C533D.GeneratedTextTransformation.TransformText() in c:\dev\MyApp\WebApplication3\src\WebApplication3\T4MVC.tt:line 40    WebApplication3 c:\dev\MyApp\WebApplication3\src\WebApplication3\T4MVC.tt   1398

还有其他建议吗?

另请参阅this关于ASP.NET 5中T4MVC替代方案的相关问题.

解决方法

此时,T4MVC不是为在ASP.NET 5项目上运行而设计的,所以我并不感到惊讶它不起作用.

不久前,使用基于Roslyn的方法启动了一个单独的R4MVC项目.但是,这是在ASP.NET 5没有T4支持的时候完成的,现在已经重新审视了.

所以有可能希望让T4MVC在那里运行,但是有人需要花时间来看看它的工作距离.

我刚刚迈出了一小步,fixed你所击中的空参考(尚未发布,你需要手动修复).然而,我接着遇到了似乎完全放弃的状况.

无论如何,这不是完全调查所有问题的地方,但如果有人想要接受,我们可以在https://github.com/T4MVC/T4MVC讨论.

原文链接:https://www.f2er.com/aspnet/247245.html

猜你在找的asp.Net相关文章