XmlReader and InvalidCharacter

本文关键字:InvalidCharacter and XmlReader | 更新日期: 2023-09-27 18:09:56

我使用SqlCommand.ExecuteXmlReader()FOR XML AUTO, ELEMENTS执行SqlCommand

现在,有一个列包含xml无效字符(如0x1F)。当我现在读取

XmlReader的结果时
using (var xmlReader = command.ExecuteXmlReader()) {
xmlReader.Read();
    while (xmlReader.ReadState != ReadState.EndOfFile) {
        try {
            sb.Append(xmlReader.ReadOuterXml());
        } catch(Exception e) {
            log.Error("Error in xmlReader.ReadOuterXml()", e);
        }
    }
}

我得到异常"无效字符"在xmlreader.ReadOuterXml()时,它读取无效字符。有人知道解决这个问题的方法吗?

XmlReader and InvalidCharacter

可以用<![CDATA[Data]]>包围XML数据,如下所示

<SomeNode><![CDATA[0x1F]]></SomeNode>

或者您可以使用XmlConvert来编码/解码XML数据。点击这里查看更多信息:http://msdn.microsoft.com/en-us/library/35577sxd%28v=VS.100%29.aspx