Asp.net XMLwriter CData转义字符

时间:2009-08-16 19:00:57

标签: asp.net xml vb.net cdata

我使用ASP.net VB.net编写XML文件。

在其中一个名为“描述”的元素中,我必须添加“<![CData[Class : <b>Class Name</b><br>Price: 100,000.00]]>”。

使用,

strDes = "<![CDATA[Class : <b>" + myReader.GetSqlValue(4).ToString + 
    "</b><br>Price: " + myReader.GetSqlValue(7).ToString + "]]>"
XMLwrite.WriteElementString("description", strDes.ToString)

但是当我生成XML文件时,它会给出

<description>&lt;![CDATA[Class : &lt;b&gt;Residential - Site Built&lt;/b&gt;&lt;br&gt;Price: 100,000.00]]&gt;</description>

2 个答案:

答案 0 :(得分:1)

您应该始终使用XML API来创建XML。您生成的CDATA应该由XmLWriter API生成。试试这个:

strDes = "Class : <b>" + myReader.GetSqlValue(4).ToString + _
    "</b><br>Price: " + myReader.GetSqlValue(7).ToString
XMLwrite.WriteStartElement("description")
XMLwrite.WriteCData(strDes);
XMLwrite.WriteEndElement();

答案 1 :(得分:0)

如果您正在撰写CDATA部分,则可以使用WriteCData方法。