在Visual Studio 2015中,我使用的NuGet包Unofficial.Microsoft.VisualStudio.TextTemplating.14.0.0
允許我在每次構建項目時直接從MSBuild轉換T4模板。MSBuild支持Visual Studio 2017 RTM中的T4模板
在Visual Studio 2017年RTM然而,這打破了構建具有以下消息:
An Exception was thrown while running the transformation code. The process cannot continue. The following Exception was thrown: System.IO.FileNotFoundException: Could not load file or assembly 'Microsoft.CodeAnalysis, Version=1.3.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified. File name: 'Microsoft.CodeAnalysis, Version=1.3.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'
這是由文件Unofficial.Microsoft.VisualStudio.TextTemplating.targets(396,5)
這是在這個包提高。
我的猜測是,錯誤來自於嘗試從VS 2017版本中使用這些目標,因爲環境不匹配,但我不知道如何跟蹤確切的問題。目前還沒有更新的v15包,我可以看到。
我該怎麼做T4轉換從MSBuild將適用於VS 2017?是否會有NuGet的新軟件包在某個時候使用或者不再支持?
很高興知道您已解決此問題。請標記您的答案,這對其他有相同問題的社區是有好處的。 –
這幫了我很大的忙(謝謝!),但我想指出它只適用於.NET Framework項目,而不是.NET標準項目,至少現在只是FYI。 –
@JorgeYanesDiez,可能你需要' 而不是'Microsoft.CSharp.targets'。在http://webcache.googleusercontent.com/search?q=cache:http://www.natemcmaster.com/blog/2017/03/09/vs2015-to-vs2017-upgrade/&gws_rd上查看我的評論和OP的回覆= cr&ei = yo9TWbKIPMS0aY_zqJAB –