把 XML 从一种格式转换为另外一种格式是很多开发人员的常见任务。为了完成这个工作,他们的很多人只好放弃自己熟悉的通用语言,通过调用 XSLT 函数库来实现。那么,有什么方法可以不这样做吗?
通过 LINQ to XML,使用 C#和 VB 来操纵 XML 将变得非常容易。Eric White 描述了如何使用 C# 3.0 来完成 XSLT 样式转换。
Eric 方法的关键是使用额外的信息对 XML 节点进行注释。不改变(XML)树的结构,而是依靠 XElement 把待处理的改变保存为注释,来替换(XML)树的结构。Eric 写道:
使用这种方法的一个好处——当你构思查询的时候,你总是基于不可编辑的源树来编写查询。你不需要担心树的变更会影响你编写的查询。
一旦所有待处理的改变都生成后,它们同时被处理。这是透过 XForm 的功能来实现的,XForm 创建了树的一个副本,在适当的时候进行替换。你可以继续深入了解这项技术,或者从Eric White 的博客上下载XForm 函数。查看英文原文: Using LINQ to XML Instead of XSLT for Transformations
评论