【发布时间】:2010-10-05 14:51:31
【问题描述】:
我正在尝试为 XPath 创建一个“AET”(抽象表达式树)(因为我正在编写一个 WYSIWYG XSL 编辑器)。在过去的三到四个小时里,我一直在用 XPath BNF 撞墙。
我想到了另一种解决方案。我想我可以编写一个实现 IXPathNavigable 的类,它在调用 CreateNavigator 时返回我自己的 XPathNavigator。这个 XPathNavigator 在任何方法调用上总是会成功,并且会跟踪这些调用——例如我们移动到客户节点,然后是客户节点。然后我可以(希望)使用这些信息来创建“AET”(这样我们现在就可以在对象模型中拥有客户/客户了)。
唯一的问题是:究竟我如何通过 XPathExpression 运行 IXPathNavigable?
我知道这太懒惰了。但是有没有其他人经过努力并编写了 XPath 表达式解析器?我还没有对我可能的解决方案进行 POC,因为我无法对其进行测试(因为我无法针对 IXPathNavigable 运行 XPathExpression),所以我什至不知道我的解决方案是否会起作用。
【问题讨论】:
-
您从 IXPathNavigable 开始的文本非常混乱。你能编辑问题并更好地解释吗?
标签: c# xpath xpathnavigator