gpt4 book ai didi

c# - 针对 XSD 验证 XML 的最高效方法

转载 作者:数据小太阳 更新时间:2023-10-29 01:44:21 27 4
gpt4 key购买 nike

我得到一个带有 XML 的字符串变量,并且有一个 XSD 文件。我必须根据 XSD 文件验证字符串中的 XML,并且知道有不止一种方法(XmlDocument、XmlReader、...?)。

验证后我只需要存储 XML,所以我不需要它在 XDocument 或 XmlDocument 中。

如果我想要最快的性能,该怎么做?

最佳答案

其他人已经提到了用于执行验证的 XmlReader 类,我将不再详细说明。

您的问题没有指定太多上下文。您将对多个 xml 文档重复执行此验证,还是只执行一次?我正在阅读一个场景,其中您只是验证大量 xml 文档(来自第三方系统?)并存储它们以备将来使用。

我对性能搜索的贡献是使用编译后的 XmlSchemaSet,它是线程安全的,因此多个线程可以重用它而无需再次解析 xsd 文档。

var xmlSchema = XmlSchema.Read(stream, null);
var xmlSchemaSet = new XmlSchemaSet();
xmlSchemaSet.Add(xmlSchema);
xmlSchemaSet.Compile();

CachedSchemas.Add(name, xmlSchemaSet);

关于c# - 针对 XSD 验证 XML 的最高效方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3666987/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com