LinqToXml还是Xml?

时间:2010-07-10 20:23:25

标签: c# .net xml linq-to-xml

我正在尝试在xml上进行处理,我很厌倦使用Xml命名空间类。 我发现它真的很难。

所以我试图用LinqtoXml类做同样的事情,我看到很多事情可能用LinqtoXml而不是Xml类。所以我真的很困惑,我必须使用。

您何时以及为何更喜欢Xml类而不是LinqtoXml类?

编辑:

当Xml类可以使用时,LinqToXml无法做什么?

2 个答案:

答案 0 :(得分:8)

自.NET Framework的第一个版本以来,可以使用用于操作和处理XML数据的常规方法。 Linq自.NET Framework 3.5起可用。如果您使用旧版本的.NET Framework,那么这就是使用普通Xml类的原因之一。

Linq to Xml也采用了不同的方法。它更多的是查询XML数据,而不是阅读它。所以在某些情况下,Linq到Xml将是最简单的方法,但不是每个情况。如果一个不熟练的开发人员使用Linq到Xml的简易性也可能是一件坏事:恕我直言,生成具有Linq的巨大性能问题的代码要容易得多。

答案 1 :(得分:3)

专门在LINQ to XML空间中工作有利于查询(LINQ中的 Q ),并将原始XML数据投影到 new 结构,但在某些情况下它是不实用的,而在其他情况下则不可能直接操作XML。

人们可以提出一个论点,即在很多情况下这仍然是一件好事,因为不变性确实减少了某些类型的错误的机会,但它肯定会有成本 - 不能完全适应每种情况,有时甚至是性能。 / p>

相关问题