10

我刚刚下载了sharparchitecture/Northwind,我正在尝试让crud 脚手架工作。除了添加对此类库的缺失引用外,我什么都没做。我尝试运行 ScaffoldingGeneratorCommand.tt 并遇到以下 3 个错误。

错误 1 ​​编译转换:类、结构或接口成员声明文件中的标记“this”无效:BaseTemplate.tt

错误 2 编译转换:类、结构或接口方法必须有返回类型文件:BaseTemplate.tt

错误 3 编译转换:键入预期文件:BaseTemplate.tt

编译器说它们出现在 BaseTemplate.tt 的第一行,但我认为这不是真正的原因。

有人遇到过这个问题吗?你知道我能做些什么来解决它吗?

非常感谢您的时间,PK

4

2 回答 2

34

我使用其他 T4 模板收到了这个。问题最终是文件末尾的空格(在最后一个 '#>' 之后)。

在 VS 中打开你的 .tt 文件,CTRL+END,确保在最后一个 #> 之后删除所有空格

 string someMethod()
 {
     //some code
    return "someValue";
 }
 #>

道具转到 Cheverton 的帖子:http: //social.msdn.microsoft.com/Forums/en-SG/vsx/thread/cd1217c1-39b0-4799-86a2-2449e21a8544

于 2011-04-20T16:43:10.250 回答
5

我意识到这是一个老问题,但我刚才遇到了同样的问题,在我的情况下,它原来是行尾。他们是LF,但需要是CRLF。

在我对 .tt 文件进行一些编辑、关闭编辑器并再次打开它之后,我在同一个文件中同时拥有 LF 和 CRLF 行结尾,此时 Visual Studio 愿意为我解决这个问题。一旦我在 .tt 文件中有一致的 CRLF 行结尾,它就起作用了。

于 2014-04-09T15:32:01.213 回答