我使用Fizzler / HtmlAgilityPack来解析和提取ASP.NET页面文件中的元素。在asp.net文件中,我们还使用了Telerik控件,例如
<telerik:RadGrid ... >为了提取这个元素,我使用了下面的方法,但没有成功。有人能帮个忙吗?
method#1:
HtmlDocument document = .....;
document.SelectNodes("telerik:RadGrid");它抛出了下面的异常:

然后我尝试了method#2:
XPathNavigator navigator = document.CreateNavigator();
var manager = new XmlNamespaceManager(navigator.NameTable);
manager.AddNamespace("telerik", "http://www.telerik.com");
var expr = XPathExpression.Compile("RadGrid");
expr.SetContext(manager);
var grids = document.DocumentNode.SelectNodes(expr);再一次没有例外。但是即使asp.net页面包含了telerik:RadGrid的标记,网格也是空的。
发布于 2019-10-14 21:56:43
可能是您的xpath不正确。请尝试此//*name()='telerik:RadGrid‘作为命名空间,它应该适用于具有XML命名空间的元素。
https://stackoverflow.com/questions/58374017
复制相似问题