加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

生成XML的Visual Studio 2012 T4模板会出错

发布时间:2020-12-16 07:47:13 所属栏目:百科 来源:网络整理
导读:我正在使用visual studio 2012从T4模板生成 XML.模板的顶部看起来像 #@ template language="VBv4" hostspecific="True" debug="True" ##@ output extension="wmef" #?xml version="1.0" encoding="utf-8" standalone="yes"? T4模板正确生成XML.这没问题.然而
我正在使用visual studio 2012从T4模板生成 XML.模板的顶部看起来像
<#@ template language="VBv4" hostspecific="True" debug="True" #>
<#@ output extension="wmef" #>
<?xml version="1.0" encoding="utf-8" standalone="yes"?>

T4模板正确生成XML.这没问题.然而,visual studio变得混乱,它还试图将模板本身作为XML处理,并报告构建错误,说XML形成错误,当然这是因为它是XML的模板,而不是实际的XML.

当我第一次编辑.tt文件时,一切正常.但是,一旦生成了XML文件并将其加载到编辑器中以查看它,然后突然返回到.tt文件,.tt文件的语法突出显示为XML,然后出现构建错误.

Perhapps这只是一个m $oft的错误

关于这里可能发生什么的任何想法?

这是VS中的一个错误.您可以通过在.tt文件中替换该行来解决它
<?xml version="1.0" encoding="utf-8" standalone="yes"?>

<# WriteLine("<?xml version="1.0" encoding="utf-8" standalone="yes"?>"); #>

一旦VS对模板文件的XML格式感到困惑,它就会持续存在这种混乱 – 即使在完成上述编辑和重新启动之后也是如此.唯一的方法似乎是从项目中删除现有的.tt文件并从头开始重新创建.

通过此更改,.tt文件没有<?xml?>标签,所以VS不认为它是一个XML文件.它会忽略文字字符串中的所有内容.

这似乎是与T4 Template containing XML results in parse errors相同的问题,但OP的解决方法从未得到确认或接受,这就是我在此重新发布的原因.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读