我正在尝试处理XML,但使用XML命名空间类让我感到非常疲惫。我发现它真的很难。因此,我尝试使用LinqtoXml类来完成相同的事情,并且我发现与XML类相比,LinqtoXml有很多可能性。所以我真的很困惑该使用哪个。
您何时以及为什么更喜欢使用XML类而不是LinqtoXml类?
编辑:
在LinqToXml中无法完成哪些在XML类中可以完成的事情?
您何时以及为什么更喜欢使用XML类而不是LinqtoXml类?
编辑:
在LinqToXml中无法完成哪些在XML类中可以完成的事情?
自从.NET Framework的第一个版本推出以来,就提供了一般用于操作和处理XML数据的方法。Linq在.NET Framework 3.5中可用。如果您的目标是较旧版本的.NET Framework,则使用普通的Xml类之一是合适的原因之一。
Linq to Xml也有不同的方法。它更多地涉及查询XML数据,而不是读取它。因此,在某些情况下,Linq to Xml将是最容易实现任务的方法,但并非在每个情况下都是如此。对于不熟练的开发人员来说,使用Linq可能会导致代码性能问题,这可能是一个坏事。在我看来,与没有使用Linq相比,使用Linq更容易产生巨大的性能问题。
在LINQ to XML领域中专门工作非常适合查询(LINQ中的“Q”)和将原始XML数据投影到新结构中,但在某些情况下操作XML直接是笨重的,而在其他情况下则是不可能的。
有人可以认为在许多情况下这仍然是一件好事,因为不变性确实减少了某些类型的错误的机会,但它肯定会有成本-不能完全与每种情况完全对齐,并且有时会影响性能。