根据this的最新评论从 Visual Studio Update 1 开始,ASP.NET 5 将支持 .tt 模板。
哪个恕我直言会很棒,因为在使用后 T4MVC多年来,我当然不想回去使用魔法字符串作为路由/ View 名称(容易出错且不利于重构)。
但是,我无法让它与 ASP.NET 5 RC 和 Visual Studio Professional 2015 Update 1 一起使用。
这是我尝试过的:
Error NU1002 The dependency T4MVCExtensions 3.16.5 in project WebApplication1 does not support framework DNXCore,Version=v5.0.
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 替代品的相关问题。
最佳答案
正如 David Ebbo(嘿!)指出的那样,R4MVC - 很久以前就开始了一个副项目,但由于(当时)Roslyn 编译器中的重大更改而停滞不前。
幸运的是,项目恢复了,R4MVC刚刚发布了它的第一个 alpha 版本,很快就会有更多的变化。
虽然该项目的工作方式有所不同,并且不使用 t4 模板,但最终结果是相同的,我们正在努力在不久的将来实现与 T4MVC 的功能对等。
关于asp.net - 使 T4MVC 与 ASP.NET 5 一起工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34399939/