LibKing » Книги » comp-programming » Герберт Шилдт - C# 4.0: полное руководство

Герберт Шилдт - C# 4.0: полное руководство

Тут можно читать онлайн Герберт Шилдт - C# 4.0: полное руководство - бесплатно ознакомительный отрывок. Жанр: comp-programming, издательство ООО "И.Д. Вильямс", год 2011. Здесь Вы можете читать ознакомительный отрывок из книги онлайн без регистрации и SMS на сайте LibKing.Ru (ЛибКинг) или прочесть краткое содержание, предисловие (аннотацию), описание и ознакомиться с отзывами (комментариями) о произведении.
Герберт Шилдт - C# 4.0: полное руководство
  • Название:
    C# 4.0: полное руководство
  • Автор:
  • Жанр:
  • Издательство:
    ООО "И.Д. Вильямс"
  • Год:
    2011
  • ISBN:
    978-5-8459-1684-6
  • Рейтинг:
    3.92/5. Голосов: 141
  • Избранное:
    Добавить в избранное
  • Ваша оценка:

Герберт Шилдт - C# 4.0: полное руководство краткое содержание

C# 4.0: полное руководство - описание и краткое содержание, автор Герберт Шилдт, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru

В этом полном руководстве по C# 4.0 - языку программирования, разработанному специально для среды .NET, - детально рассмотрены все основные средства языка: типы данных, операторы, управляющие операторы, классы, интерфейсы, методы, делегаты, индексаторы, события, указатели, обобщения, коллекции, основные библиотеки классов, средства многопоточного программирования и директивы препроцессора. Подробно описаны новые возможности C#, в том числе PLINQ, библиотека TPL, динамический тип данных, а также именованные и необязательные аргументы. Это справочное пособие снабжено массой полезных советов авторитетного автора и сотнями примеров программ с комментариями, благодаря которым они становятся понятными любому читателю независимо от уровня его подготовки.


Книга рассчитана на широкий круг читателей, интересующихся программированием на C#.Введите сюда краткую аннотацию

C# 4.0: полное руководство - читать онлайн бесплатно ознакомительный отрывок

C# 4.0: полное руководство - читать книгу онлайн бесплатно (ознакомительный отрывок), автор Герберт Шилдт
Тёмная тема

Шрифт:

Сбросить

Интервал:

Закладка:

Сделать

Console.WriteLine("Локальный путь: 11 + sample. LocalPath") ;

Console.WriteLine("Запрос: " + sample.Query);

Console.WriteLine("Путь и запрос: " + sample.PathAndQuery);

}

}

Эта программа дает следующий результат.

Хост: herbschildt.com

Порт: 80

Протокол: http

Локальный путь: 11 + sample. LocalPath

Запрос: ?SomeQuery

Путь и запрос: /somefile.txt?SomeQuery

Доступ к дополнительной информации, получаемой в ответ по протоколу HTTP

С помощью сетевых средств, имеющихся в классе HttpWebResponse, можно получить доступ к другой информации, помимо содержимого указываемого ресурса. К этой информации, в частности, относится время последней модификации ресурса, а также имя сервера. Она оказывается доступной с помощью различных свойств, связанных с получаемым ответом. Все эти свойства, включая и те что, определены в классе WebResponse, сведены в табл. 26.5. В приведенных далее примерах программ демонстрируется применение этих свойств на практике.

Таблица 26.5. Свойства, определенные в классе HttpWebResponse

Свойство - Описание

public string CharacterSet { get; } -Получает название используемого набора символов

public string ContentEncoding { get; } -Получает название схемы кодирования

public long ContentLength { get; } -Получает длину принимаемого содержимого. Если она недоступна, свойство имеет значение -1

public string ContentType { get; } -Получает описание содержимого

public CookieCollection Cookies { get; set; } -Получает или устанавливает список cookie-наборов, присоединяемых к ответу

public WebHeaderCollection Headers! get; } -Получает коллекцию заголовков, присоединяемых к ответу

public bool IsFromCache { get; } -Принимает логическое значение true,если запрос получен из кеша. А если запрос доставлен по сети, то принимает логическое значение false

public bool IsMutuallyAuthenticated { get; } -Принимает логическое значение true,если клиент и сервер опознают друг друга, а иначе — принимает логическое значение false

public DateTime LastModified { get; } -Получает время последней модификации ресурса

public string Method { get; } -Получает строку, которая задает способ ответа

public Version ProtocolVersion { get; } -Получает объект типа Version,описывающий версию протокола HTTP, используемую в транзакции

public Uri ReponseUri { get; } -Получает URI, по которому был сформирован ответ. Этот идентификатор может отличаться от запрашиваемого, если ответ был переадресован по другому URI

public string Server { get; } -Получает строку, обозначающую имя сервера

public HttpStatusCode StatusCode { get; } -Получает объект типа HttpStatusCode,описывающий состояние транзакции

public string StatusDescription { get; } -Получает строку, обозначающую состояние транзакции в удобочитаемой форме

Доступ к заголовку

Для доступа к заголовку с информацией, получаемой в ответ по протоколу HTTP, служит свойство Headers, определенное в классе HttpWebResponse.

public WebHeaderCollection Headers{ get; }

Заголовок протокола HTTP состоит из пар "имя-значение", представленных строками. Каждая пара "имя-значение" хранится в коллекции класса WebHeaderCollection. Эта коллекция специально предназначена для хранения пар "имя-значение" и применяется аналогично любой другой коллекции (подробнее об этом см. в главе 25). Строковый массив имен может быть получен из свойства AllKeys, а отдельные значения — по соответствующему имени при вызове метода GetValues(). Этот метод возвращает массив строк, содержащий значения, связанные с заголовком, передаваемым в качестве аргумента. Метод GetValues()перегружается, чтобы принять числовой индекс или имя заголовка.

В приведенной ниже программе отображаются заголовки, связанные с сетевым ресурсом, доступным по адресу www. McGraw-Hill. com.

// Проверить заголовки.

using System;

using System.Net;

class HeaderDemo {

static void Main() {

// Создать объект запроса типа WebRequest по указанному URI.

HttpWebRequest req = (HttpWebRequest)

WebRequest.Create("http://www.McGraw-Hill.com");

// Отправить сформированный запрос и получить на него ответ.

HttpWebResponse resp = (HttpWebResponse)req.GetResponse();

// Получить список имен.

string[] names = resp.Headers.AllKeys;

// Отобразить пары "имя-значение" из заголовка.

Console.WriteLine("{0,-20}{1}", "Имя", "Значение");

foreach (string n in names) {

Console.Write("{0,-20}", n);

foreach (string v in resp.Headers.GetValues(n))

Console.WriteLine(v);

}

// Закрыть ответный поток, resp.Close();

}

}

Ниже приведен полученный результат. Не следует забывать, что информация в заголовке периодически меняется, поэтому у вас результат может оказаться несколько иным.

Имя Значение

X-Server-Name va-c1-r4-u27-b1

X-Cache MISS from proxy.ukr.zal

X-Cache-Lookup MISS from proxy.ukr.zal:3129

Connection keep-alive

Content-Length 4442

Content-Type text/html;charset=utf-8

Date Wed, 27 Jul 2016 09:01:26 GMT

Last-Modified Mon, 25 Jul 2016 11:57:20 GMT

Server Apache

(В оригинале приведено:)

Имя Значение

Transfer-encoding chunked

Content-Type text/html

Date Sun, 06 Dec 2009 20:32:06 GMT

Server Sun-ONE-Web-Server/6.1

Доступ к cookie-наборам

Для доступа к cookie-наборам, получаемым в ответ по протоколу HTTP, служит свойство Cookies, определенное в классе HttpWebResponse. В cookie-Ha6opax содержится информация, сохраняемая браузером. Они состоят из пар "имя-значение" и упрощают некоторые виды доступа к веб-сайтам. Ниже показано, каким образом определяется свойство Cookies.

public CookieCollection Cookies { get; set; }

В классе CookieCollectionреализуются интерфейсы ICollectionи IEnumerable, и поэтому его можно использовать аналогично классу любой другой коллекции (подробнее об этом см. в главе 25). У этого класса имеется также индексатор, позволяющий получать cookie-Ha6op по указанному индексу или имени.

В коллекции типа CookieCollectionхранятся объекты класса Cookie. В классе Cookieопределяется несколько свойств, предоставляющих доступ к различным фрагментам информации, связанной с cookie-набором. Ниже приведены два свойства, Nameи Value, используемые в примерах программ из этой главы.

public string Name { get; set; }

public string Value { get; set; }

Читать дальше
Тёмная тема

Шрифт:

Сбросить

Интервал:

Закладка:

Сделать


Герберт Шилдт читать все книги автора по порядку

Герберт Шилдт - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




C# 4.0: полное руководство отзывы


Отзывы читателей о книге C# 4.0: полное руководство, автор: Герберт Шилдт. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
Большинство книг на сайте опубликовано легально на правах партнёрской программы ЛитРес. Если Ваша книга была опубликована с нарушениями авторских прав, пожалуйста, направьте Вашу жалобу на PGEgaHJlZj0ibWFpbHRvOmFidXNlQGxpYmtpbmcucnUiIHJlbD0ibm9mb2xsb3ciPmFidXNlQGxpYmtpbmcucnU8L2E+ или заполните форму обратной связи.
img img img img img