C# 如何在windows 8应用程序中使用Html Agility Pack?

C# 如何在windows 8应用程序中使用Html Agility Pack?,c#,xml,windows-8,html-agility-pack,C#,Xml,Windows 8,Html Agility Pack,首先,我想说的是,我对c#和Windows8应用程序是新手。所以,请不要对我太苛刻 我有以下代码来提取一些图像URL并将它们保存在XML文件中。 我使用的是Html Agility Pack,但当我尝试在Windows 8应用程序中使用该代码时,它不起作用。我知道我必须从这里开始使用Fizzler Html敏捷包:但我不知道出了什么问题。 我正在使用visual studio 2012,但它不识别以下元素: ***WebClient*** x = new ***WebClient***();

首先,我想说的是,我对c#和Windows8应用程序是新手。所以,请不要对我太苛刻

我有以下代码来提取一些图像URL并将它们保存在XML文件中。 我使用的是Html Agility Pack,但当我尝试在Windows 8应用程序中使用该代码时,它不起作用。我知道我必须从这里开始使用Fizzler Html敏捷包:但我不知道出了什么问题。 我正在使用visual studio 2012,但它不识别以下元素:

***WebClient*** x = new ***WebClient***();  
***XmlDocument*** output = new ***XmlDocument***();  
***XmlElement*** imgElements = output.CreateElement("ImgElements");  
foreach(HtmlNode link in document.***DocumentElement***.SelectNodes("//img[contains(@src, '_412s.jpg')]"));                                             
***out***.Save(@"C:\test.xml");
代码:

你能帮帮我吗

谢谢大家!

out.Save(@"C:\test.xml");
应该是:

output.Save(@"C:\test.xml");
然后需要将以下两个名称空间添加到代码文件的顶部:

using System.Xml;
using System.Net;
这些错误与Windows 8无关。它们在任何版本中都是错误。我不知道为什么您需要从
WebClient
类切换到
HttpClient
类,因为它们在Windows 8中都受支持,但是,如果您想使用
HttpClient
类,类似的方法应该可以工作:

HttpClient x = new HttpClient();
Task<string> t = x.GetStringAsync(@"http://www.google.com");
t.Wait();
string source = t.Result;
HttpClient x=新的HttpClient();
任务t=x.GetStringAsync(@)http://www.google.com");
t、 等待();
字符串源=t.结果;

尝试以下方法:

HttpClientHandler handler = new HttpClientHandler();
HttpClient client = new HttpClient(handler as HttpMessageHandler) { BaseAddress = new Uri(@"http://www.google.com") };
var r = await client.GetAsync(client.BaseAddress);
string html;
if (r.IsSuccessStatusCode) html = await r.Content.ReadAsStringAsync();

我得换了。保存到大纲。保存。windows 8应用程序中无法识别WebClient,因此我使用HttpClient对其进行了更改,但现在DownloadString不再工作。我想我必须用client.GetAsync来更改它。我还必须用DocumentNode更改DocumentElement。你能帮我使用GetAsync函数吗?
HttpClientHandler handler = new HttpClientHandler();
HttpClient client = new HttpClient(handler as HttpMessageHandler) { BaseAddress = new Uri(@"http://www.google.com") };
var r = await client.GetAsync(client.BaseAddress);
string html;
if (r.IsSuccessStatusCode) html = await r.Content.ReadAsStringAsync();