好吧,基本上我有一个Windows Phone 8.1应用程序应该下载html文件并使用HtmlAgilityPack-PCL和LINQ解析它。

var nodes = from tr in doc.DocumentNode.Descendants("body")
                from td in tr.Descendants("div").Where(x =>
x.Attributes["id"].Value == "screen")select tr;

然后我试图从节点获取节点

var nodes = from tr in doc.DocumentNode.Descendants("body")
                from td in tr.Descendants("div").Where(x =>
x.Attributes["id"].Value == "screen")select tr;

这就是我有一个例外“对象引用未设置为对象实例”的观点。 html文件肯定有我正在寻找的div 。那么我做错了什么?

一般承认的答案

你可能意味着

var node = doc.DocumentNode.Descendants("div").
               Where(div => div.GetAttributeValue("id", string.Empty) == "screen").
               FirstOrDefault();

如果不起作用,请随意分享您的HTML或相关部分。




许可下: CC-BY-SA with attribution
不隶属于 Stack Overflow
这个KB合法吗? 是的,了解原因
许可下: CC-BY-SA with attribution
不隶属于 Stack Overflow
这个KB合法吗? 是的,了解原因