21

XPathReader 是/是正读 XML 解析器(基于 XMLReader 构建)的实现,它允许您注册 XPath 查询以供它查找(或至少称为Sequential XPath的 XPath 子集)。这似乎是轻松访问 xml 流元素的完美选择,或者您只需要从大型 xml 文档的开头提取一些信息,因此不想将整个内容加载到内存中的情况。

对于其中一位 MS 人员在 2003/2004 年发布的开源实现,似乎有一阵兴奋,例如:

http://donxml.com/allthingstechie/archive/2004/02/26/430.aspx

http://msdn.microsoft.com/en-us/library/ms950778.aspx

http://www.tkachenko.com/blog/archives/000472.html

但在那之后,这条小路似乎干涸了。对托管实施的位置 ( http://workspaces.gotdotnet.com/xpathreader ) 的引用似乎不再有效。有谁知道发生了什么事,为什么感兴趣的人消失了?

4

4 回答 4

6

XNode.ReadFrom 将 Linq to XML 的强大功能(和支持的状态)与处理流而不是将整个文件加载到内存中的能力相结合

http://msdn.microsoft.com/en-us/library/system.xml.linq.xnode.readfrom.aspx

于 2012-11-09T17:45:56.020 回答
4

似乎ms在这里发布了这个并且安装包括源代码。

于 2009-10-27T16:14:52.457 回答
4

我怀疑 LINQ-to-XML 发生了。但是,CodePlex 上的 Mvp.Xml 项目有许多与此相关的功能。您可能想看看他们开发的XPointer.NETXPointerReader库和.

另外,您可能想看看CodeProject 上的这个 FastXPathReader(我不知道它的效果如何)。

至于 XPathReader,我只能找到您提供的链接以及与这些链接相关的链接。好像消失了一样。就像我说的,我认为 LINQ-to-XML 是结果,但我只是猜测。

于 2009-01-21T16:10:40.173 回答
0

今天发现自己问了同样的问题,因为我打算构建一个 BizTalk 管道组件来解析特定元素的传入消息。

经过一番谷歌搜索,我发现 XPathReader 程序集随 BizTalk 一起提供,并且驻留在 GAC 中。

只需引用 GAC 程序集 Microsoft.BizTalk.XPathReader.dll 即可启动并运行!

于 2018-04-27T07:36:00.807 回答