Вот вам воздушный код, с которым вы можете поиграть (я сам не проверял)
WebRequest req = WebRequestCreator.ClientHttp.Create(yourUri);
req.Method = "HEAD";
req.BeginGetResponse(ar =>
{
WebResponse resp = req.EndGetResponse(ar);
int length = resp.ContentLength;
// Do stuff with length
}, null);
Используя стек ClientHttp
, вы можете использовать запрос "HEAD", который вернет то же самоенабор заголовков как «GET», но не фактическое тело объекта.
Хотя есть одна вещь, на которую следует обратить внимание, ни один из существующих файлов cookie для URI не будет отправлен в запросе.Если ответ чувствителен к cookie-файлам (например, потому что ему нужен идентификатор сеанса), тогда все станет намного сложнее.