2014-04-02 43 views
0

我使用nant进行编译自动化。在我的nant文件中,我包含了另一个具有所有属性的peroperty文件。Nant Propety与&

后来我用的是现有的属性在属性文件中,我有以下属性来代替我的web.config文件

<copy file="web.config" tofile="templateed.web.config" overwrite="true"> 
    <filterchain> 
    <expandproperties/> 
    </filterchain> 
</copy> 

内部令牌

<property name="url" value="/test?key=1&amp;value=1" /> 

结果:/test?key=1&value=1

预计:/test?key=1&amp;value=1

没有人知道如何做到这一点?

谢谢!

尔格

回答

2

&指XML “的字符引用开始”。

如果你想要一个&作为数据,你必须使用它的字符引用:&amp;

所以,如果你想要&amp;作为数据,你必须用&amp;替换&,如:&amp;amp;


但是,你有什么现在似乎是 “一个URL” 正确。因此,如果您想要将这些数据放入另一个XML文件中,则应该将其解码为/test?key=1&value=1,但在将它放入新的XML时,将其编码为XML。

+0

我也想出了使用'& amp'的解决方案。但是我的构建过程还会创建其他属性文件,这些文件将在稍后提供所以转换发生多次。在这种情况下,该解决方案不再有效。 – tschuege

+0

修复转换的内容,使其对于输入和输出XML知道,而不仅仅是输入。 – Quentin