我使用SqlCommand.ExecuteXmlReader()
與FOR XML AUTO, ELEMENTS
的XmlReader和INVALIDCHARACTER
我們執行的SqlCommand的,還有其中包含XML無效字符(如爲0x1F)的一列。當我與
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的結果我得到的異常「無效字符」在xmlreader.ReadOuterXml()
時,它讀取無效字符。 有沒有人知道解決方法我該如何解決這個問題?
可以說,如果FOR XML'返回的東西是無效的XML,那麼解決這個問題的唯一「正確」方法就是記錄MS的錯誤並將其固定在源 –