Раніше я використовував CookieContainer з сесіями HttpWebRequest і HttpWebResponse, але тепер я хочу використовувати його з WebClient. Наскільки я розумію, немає вбудованого методу, як для HttpWebRequests (request.CookieContainer
). Як я можу збирати файли cookie з WebClient у CookieContainer?
Я погуглився для цього і знайшов наступний зразок :
public class CookieAwareWebClient : WebClient
{
private readonly CookieContainer m_container = new CookieContainer();
protected override WebRequest GetWebRequest(Uri address)
{
WebRequest request = base.GetWebRequest(address);
HttpWebRequest webRequest = request as HttpWebRequest;
if (webRequest != null)
{
webRequest.CookieContainer = m_container;
}
return request;
}
}
Це найкращий спосіб зробити це?
m_container
це ніколи не встановлюється !? Хіба це завжди порожньо?