为什么我的T4模板有时会在输出文件中附加一个数字,有时不会?例如,在一种情况下,我可能有一个名为的模板文件Foo.tt,我将得到一个输出文件Foo.cs.在其他情况下,我将获得一个输出文件Foo1.cs.在每种情况下,都没有其他 Foo.cs文件可能导致它附加一个数字.换句话说,它绝对不是任何明显的文件名冲突的结果.
我是一个深度肛门保持开发者,所以我很想知道如何摆脱那个无用的数字后缀.
ito*_*son 77
当Visual Studio让自己感到困惑并且由于某种原因(通常是幻觉)而无法使用Foo.cs作为输出时会发生这种情况,因此它将使用Foo1.cs,然后坚持记住此设置.
解决方法是在文本编辑器中打开.csproj文件并找到Foo.tt条目.这应该有一个名为LastGenOutput的子元素.将其更改回Foo.cs,保存项目文件,然后在VS中重新打开它.
然后 - 叹气 - 等待它再次发生.您可以查看http://social.msdn.microsoft.com/Forums/en/linqtosql/thread/0c0f77a6-d712-43d2-a990-555df7960123了解更多详情,但似乎没有人能够解释导致VS进入的原因这种状态或如何阻止它这样做......
Ric*_*ers 39
@ itowlson的答案真的帮助了我,但我发现了一个稍微简单的解决方法,我认为我会分享.
如果你有:
Filename.tt
??? Filename1.cs
Run Code Online (Sandbox Code Playgroud)
只需重命名Filename.tt为Filename2.tt:
Filename2.tt
??? Filename2.cs
Run Code Online (Sandbox Code Playgroud)
并Filename.tt再次回复:
Filename.tt
??? Filename.cs
Run Code Online (Sandbox Code Playgroud)
瞧.
| 归档时间: |
|
| 查看次数: |
3724 次 |
| 最近记录: |