我有一个XML架构(xsd)和一个XML数据文件,我将其读入DataSet,绑定到UI控件,然后将更改保存回XML。
在XML内,我使用CDATA,因为XML数据包含HTML字符串。 但是,当我保存回XML时,CDATA部分将被删除, “ <”“>”已编码,我需要防止这种情况发生。
例如,我的XML文件中包含以下标记和数据:
<MyTag><![CDATA[My html string in <b>BOLD</b>]]></MyTag>
但是,当它从DataSet.WriteXML()中写出时,我最初得到的是:
<MyTag>My html string in <b>BOLD</b></MyTag>
请注意,1)缺少CDATA,2)已对“ <”和“>”进行编码...
因此,在保存之前,我更改了代码以更改DataSet值:
MyDataSet.Tables[0].Rows[0][0] = "<![CDATA[" + MyDataSet.Tables[0].Rows[0][0] + "]]>";
现在我得到这个输出:
<MyTag><![CDATA[My html string in <b>BOLD</b>]]></MyTag>
几乎正确。我尝试使用反斜杠转义“ <”,但是反斜杠 输出为字符...
如何获取使用文字“ <”和““>”的输出?