簡體   English   中英

如何在.NET Framework 4.5應用程序/站點中使用HttpClient?

[英]How can I use HttpClient in my .NET Framework 4.5 app/site?

根據此處的答案: 如何僅檢索和解析從URL返回的html?

...我正嘗試根據以下代碼開始添加代碼: http : //msdn.microsoft.com/en-us/library/system.net.http.httpclient.aspx

...即通過將其添加到\\ App_Code \\ Functions.cshtml中:

@functions
{
    public static string GetUrlHtml(string dynamicUrl)
    {
        HttpClient client = new HttpClient();
        string body = await client.GetStringAsync(dynamicUrl);
    // parse it using HTML Agility Pack? (http://htmlagilitypack.codeplex.com/)
    }
}

HttpClient無法識別,並且不提供“解析”上下文菜單項。 輸入以下內容后,Intellisense不會為我提供“ Http”:

@using System.Net.

我真的無法使用HttpClient嗎? 如果是這樣,我可以得到什么安慰獎? 我最好的選擇是使用WebClient,如下所示:

WebClient wc = new WebClient();
string body = wc.DownloadString(dynamicUrl);
// parse it with html agility pack

...或者,如http://www.4guysfromrolla.com/articles/011211-1.aspx#postadlink所示,我可以使用HTML Agility Pack中的webGet類:

var webGet = new HtmlWeb();
var document = webGet.Load(dynamicUrl);

是否有人對哪種選擇最好有任何支持的意見?

錯誤的答案是被接受的。

這是正確的:

添加到配置

<system.web>
    <compilation>
        <assemblies>
            <add assembly="System.Net.Http, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
        </assemblies>
    </compilation>
</system.web>

請確保您具有對System.Net.Http的程序集引用。

安裝此nuget軟件包,它將添加適當的引用http://nuget.org/packages/Microsoft.Net.Http/2.0.20710.0

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM