我正在尝试在VS2010中使用T4,但我有一个奇怪的问题。 T4始终显示错误消息“指令以错误的格式指定”,尽管所有指令的格式都是正确的。原来这个错误是由UTF-8文件前缀引起的,T4无法识别。好的,我必须删除它。但每次我尝试使用外部编辑器将此文件保存为ANSI编码时,VS2010会将其编码更改回UTF-8。当我在VS2010中修改文件时也一样。所以T4再也不起作用了 有什么建议吗?
答案 0 :(得分:1)
您使用的是哪种Windows和Visual Studio语言版本。
T4支持带/不带前缀的UTF-8,因为它基本上复制了输入模板的编码,除非另有指示。 (更改编码后,必须关闭/重新打开VS中的输出文件才能看到开关)。我无法重复你在EN-US Windows和VS上看到的内容。
如果您确实要保存为ANSI,可以使用VS中的文件/高级保存选项菜单并选择代码页。
答案 1 :(得分:1)
我找到了原因,它与编码无关,我的不好。我从一个样本中复制了一些文本,它的引号有错误的符号(在视觉上看起来非常相似,但有不同的字符代码)。这使得T4解析器失败。