我有一个 SslStream,我从中接收自发的 XML 消息。我想使用 XmlTextReader 处理来自该流的 XML 消息。不幸的是,它只允许我读取第一个 XML。当我在收到第一个 xml 后调用 Read 时,该方法会抛出异常:
XML 文档中的多个根(“Xml_MultipleRoots”)。我相信这是一个问题,流提供了一条一条的 xml 消息,但 XmlTextReader 只能处理一条。
如何解决这个问题?
首先,不要使用new XmlTextReader()
不再了。使用XmlReader.Create()
,这是创建XmlReader
自 .NET 2.0 以来。
二、使用重载Create
接受一个XmlReaderSettings
object:
using (var reader = XmlReader.Create(sslStream,
new XmlReaderSettings
{
ConformanceLevel = ConformanceLevel.Fragment
}))
{
// ... read xml
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)