加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

使用XPath /应用XSL转换遍历任意的C#对象图

发布时间:2020-12-15 06:54:10 所属栏目:百科 来源:网络整理
导读:我一直在寻找一个允许我将任意C#对象传递给XSL转换的组件. 这样做的天真的方法是使用XmlSerializer对对象图进行序列化;然而,如果你有一个大的对象图,这可能会导致问题,就性能而言.诸如循环引用,懒惰加载,代理等问题可能会使这里的水体进一步浑浊. 一个更好的
我一直在寻找一个允许我将任意C#对象传递给XSL转换的组件.

这样做的天真的方法是使用XmlSerializer对对象图进行序列化;然而,如果你有一个大的对象图,这可能会导致问题,就性能而言.诸如循环引用,懒惰加载,代理等问题可能会使这里的水体进一步浑浊.

一个更好的方法是使用某种实现IXPathNavigable和XPathNavigator的Adapter类.我遇到的一个这样的例子是ObjectXPathNavigator from Byte-Force – 但是,它的大多数关键文档都是俄文,而我的初始测试似乎表明它有一些怪癖和特质.

有没有人知道(a)关于这个英文的任何资源(概述,教程,博客文章等),或者(b)提供相同或相似功能的任何其他替代方案?

解决方法

有一个(非常)旧的MSDN文章,标题为 XPath Querying Over Objects with ObjectXPathNavigator ,它实现了一个类似的类(也称为ObjectXPathNavigator,有趣的是).我在这几年前使用Visual SourceSafe查询一些数据,并从更改日志中构建一个RSS提要,并且运行得很好.但是,我没有使用XSLT,所以我不知道是否有效.另外,请注意,它是为Framework 1.0编写的,因此您可能需要更新它以获取更多近期的框架.此外,现在可能有更好的方法来实现,但它会给你一个起点(文章做的很好,解释它是如何工作的).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读