「.NETのWebClientクラスでタイムアウトを変更する」の版間の差分
ナビゲーションに移動
検索に移動
(ページの作成:「.NET FrameworkのWebClientクラスは手軽で便利だが、その代償としてタイムアウトの設定ができなかったり、クッキーの制御ができな...」) |
Administrator (トーク | 投稿記録) 細 (Administrator がページ「.NET Framework/WebClientクラスでタイムアウトを変更する」を「.NET FrameworkのWebClientクラスでタイムアウトを変更する」に移動しました) |
(相違点なし)
|
2020年6月10日 (水) 07:36時点における版
.NET FrameworkのWebClientクラスは手軽で便利だが、その代償としてタイムアウトの設定ができなかったり、クッキーの制御ができなかったり何かと痒いところに手が届かなかったりする。そのような場合はWebClientクラスを継承することで旧来のWebRequestクラスとWebResponseクラスにアクセスすることが出来るようになる。
タイムアウトを変更できるようにする
タイムアウトを変更できるようにする例を示す。
using System;
using System.Net;
public class MyWebClient : System.Net.WebClient
{
public int Timeout { get; set; } = 30 * 1000;
protected override WebRequest GetWebRequest(Uri address)
{
var w = base.GetWebRequest(address);
w.Timeout = Timeout;
return w;
}
}