我会在几个假设:

  1. XPathDocument不是编辑。
  2. 如下是编辑。
  3. XPathDocument是更有效率 XslCompiledTransform.

在这种情况下(和请纠正我,如果我错了),它会更好地(更有效率):

  1. 作出修改使用 如下,则转换到一个 XPathDocument前的变换。是有一个优化的方式来做 这个?
  2. 只要坚持如下 通过转换。

一些背景下,我得到一个复杂的xml从一个网络服务,那么使用xpath找到一些要素需要修改,然后使用xslt创建html。

预先感谢所有帮助。

有帮助吗?

解决方案

它取决于有多少修改是必需的,多大的数据,以及是否熟悉xslt。如果"不"到最后,就使用 XDocument 等(最后一次我查了档案, XDocument 很快比 XmlDocument 我的数据 -运行自己的测试).使用 XDocument.Load / XDocument.Parse, ,找到你的节点,编辑和保存。


如果你 必须 使用xslt,然后 XDocument 真的不是一个选项;一旦你已经载入 XmlDocument 你也可以 XmlDocument -我不会推荐分析它变成一个 第二 DOM。

当然,它使我们想知道:为什么修改xml 外面 xslt如果你要用xslt;也许只是翻译在xslt?

获得100%准确的答案 你的数据 你会需要配置文件,当然。但事情,例如适当使用xslt分组结构往往会让一个 很多 大差异于 XmlDocument vs XPathDocument.

其他提示

只是使用 XmlDocument 类变换。它必须是一个巨大的文件真正地看到一个能增益。你可能需要编制一个静态的实例 XslCompiledTransform 类如果计划使用多次。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top