Чтение онлайн

на главную - закладки

Жанры

C# 4.0 полное руководство - 2011

Шилдт Герберт

Шрифт:

List<char> 1st = new List<char> { 'С1, 'А1, 'Е1, 'В1, 1D1, 1F1 };

После выполнения этого оператора значение свойства 1st. Count будет равно 6, поскольку именно таково число инициализаторов. А после выполнения следующего цикла foreach:

foreach(ch in 1st)

Console.Write(ch + " ");

получится

такой результат:

С A E В D F

Для инициализации коллекции типа LinkedListcTKey, TValue>, в которой хранятся пары "ключ-значение", инициализаторы приходится предоставлять парами, как показано ниже.

SortedListcint, string> 1st =

new SortedListcint, string> { {1, "один11}, {2, "два" }, {3, "три"} };

Компилятор передаст каждую группу значений в качестве аргументов методу Add . Следовательно, первая пара инициализаторов преобразуется компилятором в вызов Add(1, "один").

Компилятор вызывает метод Add автоматически для ввода инициализаторов в коллекцию, и поэтому инициализаторы коллекций можно использовать только в коллекциях, поддерживающих открытую реализацию метода Add . Это означает, что инициализаторы коллекций нельзя использовать в коллекциях типа Stack, Stack<T>, Queue или Queue<T>, поскольку в них метод Add не поддерживается. Их нельзя применять также в тех коллекциях типа LinkedList<T>, где метод Add предоставляется как результат явной реализации соответствующего интерфейса.

ГЛАВА 26 Сетевые средства подключения к Интернету

Язык C# предназначен для программирования в современной вычислительной среде, где Интернету, естественно, принадлежит весьма важная роль. Одной из главных целей разработки C# было внедрение в этот язык программирования средств, необходимых для доступа к Интернету. Такой доступ можно было осуществить и в предыдущих версиях языков программирования, включая С и C++, но поддержка операций на стороне сервера, загрузка файлов и получение сетевых ресурсов в этих языках не вполне отвечали потребностям большинства программистов. Эта ситуация коренным образом изменилась в С#. Используя стандартные средства C# и среды .NET Framework, можно довольно легко сделать приложения совместимыми с Интернетом и написать другие виды программ, ориентированных на подключение к Интернету.

Поддержка сетевого подключения осуществляется через несколько пространств имен, определенных в среде .NET Framework, и главным среди них является пространство имен System.Net. В нем определяется целый ряд высокоуровневых, но простых в использовании классов, поддерживающих различные виды операций, характерных для работы с Интернетом. Для этих целей доступен также ряд пространств, вложенных в пространство имен System. Net. Например, средства низкоуровневого сетевого управления через сокеты находятся в пространстве имен System.Net. Sockets, поддержка электронной почты — в пространстве имен System.Net.Mail, а поддержка защищенных сетевых потоков — в пространстве имен System.Net. Security. Дополнительные

функциональные возможности предоставляются в ряде других вложенных пространств имен. К числу других не менее важных пространств имен,

связанных с сетевым подключением к Интернету, относится пространство System. Web. Это и вложенные в него пространства имен поддерживают сетевые приложения на основе технологии ASP.NET.

В среде .NET Framework имеется достаточно гибких средств и возможностей для сетевого подключения к Интернету. Тем не менее для разработки многих приложений более предпочтительными оказываются функциональные возможности, доступные в пространстве имен System.Net. Они и удобны, и просты в использовании. Именно поэтому пространству имен System. Net будет уделено основное внимание в этой главе.

Члены пространства имен System.Net

Пространство имен System.Net довольно обширно и состоит из многих членов. Полное их описание и обсуждение всех аспектов программирования для Интернета выходит далеко за рамки этой главы. (На самом деле для подробного рассмотрения всех вопросов, связанных с сетевым подключением к Интернету и его поддержкой в С#, потребуется отдельная книга.) Однако целесообразно хотя бы перечислить члены пространства имен System. Net, чтобы дать какое-то представление о том, что именно доступно для использования в этом пространстве.

Ниже перечислены классы, определенные в пространстве имен System.Net.

AuthenticationManager

Authorization

Cookie

CookieCollection

CookieContainer

CookieException

CredentialCache

Dns

DnsEndPoint

DnsPermission

DnsPermissionAttribute

DownloadDataCompletedEventArgs

DownloadProgressChangedEventArgs

DownloadstringCompletedEventArgs

EndPoint

EndpointPermission

FileWebRequest

FileWebResponse

FtpWebRequest

FtpWebResponse

HttpListener

HttpListenerBasicIdentity

HttpListenerContext

HttpListenerException

HttpListenerPrefixCol lection

HttpListenerRequest

Поделиться:
Популярные книги

Имя нам Легион. Том 9

Дорничев Дмитрий
9. Меж двух миров
Фантастика:
боевая фантастика
рпг
аниме
5.00
рейтинг книги
Имя нам Легион. Том 9

Прометей: владыка моря

Рави Ивар
5. Прометей
Фантастика:
фэнтези
5.97
рейтинг книги
Прометей: владыка моря

Эволюционер из трущоб. Том 8

Панарин Антон
8. Эволюционер из трущоб
Фантастика:
попаданцы
аниме
фэнтези
фантастика: прочее
5.00
рейтинг книги
Эволюционер из трущоб. Том 8

Разбуди меня

Рам Янка
7. Серьёзные мальчики в форме
Любовные романы:
современные любовные романы
остросюжетные любовные романы
5.00
рейтинг книги
Разбуди меня

Имперец. Земли Итреи

Игнатов Михаил Павлович
11. Путь
Фантастика:
героическая фантастика
боевая фантастика
5.25
рейтинг книги
Имперец. Земли Итреи

Бестужев. Служба Государевой Безопасности. Книга 5

Измайлов Сергей
5. Граф Бестужев
Фантастика:
городское фэнтези
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Бестужев. Служба Государевой Безопасности. Книга 5

Свадьба по приказу, или Моя непокорная княжна

Чернованова Валерия Михайловна
Любовные романы:
любовно-фантастические романы
5.57
рейтинг книги
Свадьба по приказу, или Моя непокорная княжна

Ты - наша

Зайцева Мария
1. Наша
Любовные романы:
современные любовные романы
эро литература
5.00
рейтинг книги
Ты - наша

Ассимиляция

Демидов Джон
4. Система компиляции
Фантастика:
рпг
фэнтези
5.00
рейтинг книги
Ассимиляция

Сотник

Ланцов Михаил Алексеевич
4. Помещик
Фантастика:
альтернативная история
5.00
рейтинг книги
Сотник

Камень. Книга пятая

Минин Станислав
5. Камень
Фантастика:
боевая фантастика
6.43
рейтинг книги
Камень. Книга пятая

Настроение – Песец

Видум Инди
7. Под знаком Песца
Фантастика:
альтернативная история
аниме
5.00
рейтинг книги
Настроение – Песец

В зоне особого внимания

Иванов Дмитрий
12. Девяностые
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
В зоне особого внимания

Герцог и я

Куин Джулия
1. Бриджертоны
Любовные романы:
исторические любовные романы
8.92
рейтинг книги
Герцог и я