2015-06-29 95 views
0

在我的控制檯項目上,它的效果很好......但是當我在Windows Phone 8.1上使用它時,它不起作用。有什麼問題?HtmlAgilityPack SelectNode無法在WP8.1上工作

HtmlNodeCollection NoAltElements = HD.DocumentNode.SelectNodes("//div[@class='f2p-card']//div[@class='champion-info']//a[@href]"); 


HtmlNodeCollection NoAltElements = HD.DocumentNode.SelectNodes("//div[@class='white-stone']//a[@href]"); 
+0

這是問答網站,這裏有什麼問題?並確保它是[在主題](http://stackoverflow.com/help/on-topic)在這裏被問到 – har07

+1

正如我所說的,即時通訊試圖在WP8.1上選擇節點(),但不知道如何我可以這樣做,如果XPath不支持在WP8.1 –

回答

1

「我嘗試讓.SelectsNodes()在WP8.1,但不能明白,我怎麼可以做這種WP8.1如果XPath的犯規支持」

時常用的備用HtmlAgilityPack (HAP)XPath API不可用的是LINQ API,例如:

IEnumerable<HtmlNode> NoAltElements = 
         HD.DocumentNode 
          .Descendants("div") 
          .Where(o => o.GetAttributeValue("class", "") == "f2p-card") 
          .SelectMany(o => o.Descendants("div")) 
          .Where(o => o.GetAttributeValue("class", "") == "champion-info") 
          .SelectMany(o => o.Descendants("a")) 
          .Where(o => o.GetAttributeValue("href", null) != null); 

IEnumerable<HtmlNode> NoAltElements = 
         HD.DocumentNode 
          .Descendants("div") 
          .Where(o => o .GetAttributeValue("class","") == "white-stone") 
          .SelectMany(o => o.Descendants("a")) 
          .Where(o => o .GetAttributeValue("href",null) != null); 
+0

我在屏幕上[鏈接](https://pp.vk.me/c627425/v627425110/a921/swamBz0kc28.jpg) –

+0

沒有工作:( –

+0

@ArewrewBrowiski檢查更新的代碼 – har07