» » » Симон Робинсон - C# для профессионалов. Том II


Авторские права

Симон Робинсон - C# для профессионалов. Том II

Здесь можно скачать бесплатно "Симон Робинсон - C# для профессионалов. Том II" в формате fb2, epub, txt, doc, pdf. Жанр: Программирование, издательство Лори, год 2003. Так же Вы можете читать книгу онлайн без регистрации и SMS на сайте LibFox.Ru (ЛибФокс) или прочесть описание и ознакомиться с отзывами.
Симон Робинсон - C# для профессионалов. Том II
Рейтинг:
Название:
C# для профессионалов. Том II
Издательство:
Лори
Год:
2003
ISBN:
5-85582-187-0
Скачать:

99Пожалуйста дождитесь своей очереди, идёт подготовка вашей ссылки для скачивания...

Скачивание начинается... Если скачивание не началось автоматически, пожалуйста нажмите на эту ссылку.

Вы автор?
Жалоба
Все книги на сайте размещаются его пользователями. Приносим свои глубочайшие извинения, если Ваша книга была опубликована без Вашего на то согласия.
Напишите нам, и мы в срочном порядке примем меры.

Как получить книгу?
Оплатили, но не знаете что делать дальше? Инструкция.

Описание книги "C# для профессионалов. Том II"

Описание и краткое содержание "C# для профессионалов. Том II" читать бесплатно онлайн.



C# для профессионалов

Платформа .NET предлагает новую среду, в которой можно разрабатывать практически любое приложение, действующее под управлением Windows, а язык C# — новый язык программирования, созданный специально для работы с .NET.

В этой книге представлены все основные концепции языка C# и платформы .NET. Полностью описывается синтаксис C#, приводятся примеры построения различных типов приложений с использованием C# — создание приложений и служб Windows, приложений и служб WWW при помощи ASP.NET, а также элементов управления Windows и WWW Рассматриваются общие библиотеки классов .NET, в частности, доступ к данным с помощью ADO.NET и доступ к службе Active Directory с применением классов DirectoryServices.

Для кого предназначена эта книга

Эта книга предназначена для опытных разработчиков, возможно, имеющих опыт программирования на VB, C++ или Java, но не использовавших ранее в своей работе язык C# и платформу .NET. Программистам, применяющим современные технологии, книга даст полное представление о том, как писать программы на C# для платформы .NET.

Основные темы книги

• Все особенности языка C#

• C# и объектно-ориентированное программирование

• Приложения и службы Windows

• Создание web-страниц и web-служб с помощью ASP NET

• Сборки .NET

• Доступ к данным при помощи ADO NET

• Создание распределённых приложений с помощью NET Remoting

• Интеграция с COM, COM+ и службой Active Directory






Служебные классы

В этом разделе будет представлена пара служебных классов, которые могут облегчить программирование Web при работе с двумя распространенными темами Интернета — URI и адреса IP.

URI

Uri и UriBuilder являются двумя классами в пространстве имен System (подчеркнем, что не System.Net) и оба предназначены для представления Uri. Различие между ними состоит в том, что UriBuilder создает URI по заданным строкам для его компонентов, в то время как Uri выполняет синтаксический разбор всего URI.

Поскольку класс Uri предназначен скорее для разбиения, а не для создания Uri, он требует полной строки URI, чтобы ее создать.

Uri MSPage =

 new Uri("http://www.Microsoft.com/SomeFolder/SomeFile.htm?Order=- true");

Класс представляет большое число свойств, которые предназначены только для чтения. В объекте Uri не предусмотрены изменения после того, как он был создан.

string Query = MSPage.Query;               // Order = true

string AbsolutePath = MSPage.AbsolutePath; // SomeFolder/SomeFile.htm

string Schema = MSPage.Schema;             // http

int Port = MSPage.Port;                    // 80 (по умолчанию для http)

string AbsolutePath = MSPage.AbsolutePath; // SomeFolder/SomeFile.htm

string Host = MSPage.Host;                 // www.Microsoft.com

bool IsDefaultPort = MSPage.IsDefaultPort; // true, так как

                                           // 80 — значение по умолчанию

UriBuilder, с другой стороны, реализует меньше свойств: лишь столько, чтобы построить полный URI. Однако эти свойства предназначены для чтения-записи. Можно задать компоненты для создания URI с помощью конструктора:

Uri MSPage =

 new UriBuilder("http", "www.Microsoft.com", 80,

 "SomeFolder/SomeFile.htm", "Order=true");

Или присвоить значения свойствам.

UriBuilder MSPage = new UriBuilder();

MSPage.Schema = "http";

MSPage.Host = "www.Microsoft.com";

MSPage.Port = 80;

MSPage.Path = "SomeFolder/SomeFile.htm";

MSPage.Query = "Order=true";

После завершения инициализации UriBuilder получается соответствующий объект Uri со свойством Uri.

Uri CompletedUri = MSPage.Uri;

Пример вывода страницы

Мы проиллюстрируем использование UriBuilder вместе с созданием процесса Internet Explorer на примере DisplayPage. Этот пример позволяет пользователю ввести компоненты URL. Отметим, что имеется в виду URL, а не URI, так как предполагается, что это запрос HTTP. Пользователь сможет затем щелкнуть на кнопке ViewPage, и приложение выведет весь URL в текстовом поле, а также страницу с помощью элемента управления ActiveX WebBrowser.

Этот пример, будучи стандартным приложением Windows на C#, выглядит так:

Текстовые поля названы соответственно textBoxServer, textBoxPath, textBoxPort и textBoxURI. Добавленный код примера полностью находится в обработчике событий кнопки ViewPage:

private void OnClickViewPage(object sender, System.EventArgs e) {

 UriBuilder Address = new UriBuilder();

 Address.Host = textBoxServer.Text;

 Address.Port = int.Parse(textBoxPort.Text);

 Address.Scheme = Uri.UriSchemeHttp;

 Address.Path = textBoxFile.Text;

 Uri AddressUri = Address.Uri;

 Process myProcess = new Process();

 myProcess.StartInfo.FileName = "iexplorer.exe";

 textBoxURI.Text = AddressUri.ToString();

 myProcess.StartInfo.Arguments = AddressUri.ToString();

 myProcess.Start();

}

Адреса IP и имена DNS

Серверы в Интернете, так же, как и клиенты, идентифицируются адресами IP или по именам хостов (называемых также именами DNS). Обычно имя хоста, такое как www.wrox.com или www.microsoft.com, является понятным для пользователя и вводится в окне браузера Web. Адрес IP, с другой стороны, является идентификатором, который компьютеры используют для идентификации друг друга, и реально используется для обеспечения того, чтобы запросы и ответы Web направлялись на соответствующие машины.

Адрес IP является просто 32-битовым целым числом, которое обычно представляют в так называемом десятичном формате с точками как набор из четырех чисел — каждое между 0 и 255. Компьютер может иметь даже более одного адреса IP. Например, IP 100.100.100.31 при общении с другими компьютерами в Интернете через модем и адрес 10.0.0.1 при общении через свою сетевую карту с другими компьютерами в локальной сети. Следовательно, если другие компьютеры в локальной сети хотят послать сообщение этому компьютеру, они должны обращаться по адресу 10.0.0.1, в то время как компьютеры в Интернете должны обращаться к нему по адресу 100.100.100.31. Адреса обычно динамически присваиваются компьютеру каждый раз либо при загрузке (для компьютеров с постоянным соединением с интранет), либо при установлении связи (для компьютеров, соединенных с провайдером Интернета через модем или аналогичное устройство). Динамически присваиваемые адреса IP передаются компьютеру по мере необходимости из пула адресов, поддерживаемых его провайдером Интернета.

Люди редко вводят адреса IP непосредственно, а используют более понятные имена DNS, такие как www.wrox.com. Поэтому необходимо при отправке сетевого запроса сначала транслировать имя DNS в адрес IP, что выполняет один из нескольких серверов DNS.

Это организовано следующим образом: некая машина, соединенная с локальным компьютером (что означает либо выделенную машину в локальной сети, либо при модемном соединении машину в корпоративной сети, с которой происходит соединение), будет определена сервером DNS. Эта машина хранит огромную таблицу, отображающую имена DNS в адреса IP для всех известных ему компьютеров, и также содержит адреса IP других серверов DNS, имеющие возможность найти адреса, о которых она не знает. Каждый сетевой компьютер должен знать адрес IP по крайней мере одного локального сервера DNS (это один из элементов данных, которые необходимо предоставить при настройке сетевой конфигурации на компьютере). Когда посылается запрос, компьютер сначала запрашивает сервер DNS, чтобы он сообщил адрес IP, соответствующий введенному адресу домена. Затем, с помощью правильного адреса IP, направляется запрос. Обычно это происходит неявно и поэтому прозрачно, например при перемещении в Интернете.

Классы .NET для адресов IP

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

IPAddress

Класс IPAddress представляет адрес IP, который доступен как свойство Address и может быть преобразован в десятичный формат с точками с помощью ToString(). IPAddress реализует также статический метод Parse(), эффективно выполняя обратное преобразование в ToString() — из десятичной строки с точками в (целочисленный) адрес IP.

IPAddress ipAddress = IPAddress.Parse("234.56.78.9");

int address = ipAddress.Address;        // address будет присвоено 37105130

string ipString = ipAddress.ToString(); // ipString будет присвоен

                                        // текст "234.45.54.2"

IPAddress предоставляет также ряд константных статических полей, которые возвращают известные специальные адреса IP, имеющие специальные значения.

//следующая строка задает обратную петлю как "127.0.0.1"

// адрес обратной петли указывает локальный хост

string loopback = IPAddress.Loopback.ToString();

// следующая строка задает адрес широковещания как "255.255.255.255"

// адрес широковещания используется для отправки сообщения

// всем машинам в локальной сети

String broadcast = IPAddress.Broadcast.ToString();

IPHostEntry

Класс IPHostEntry инкапсулирует информацию, связанную с определенным хостом (компьютером). Он делает доступным имя хоста с помощью свойства HostName (которое возвращает строку) и все адреса IP с помощью свойства AddressList, которое возвращает массив объектов IPAddress. Класс IPHostEntry будет показан в действии в примере DNSResolver ниже.

DNS

Класс DNS является классом, который может общаться с используемым по умолчанию сервером DNS, чтобы извлечь адреса IP. Двумя важными (статическими) методами здесь являются Resolve(), использующий сервер DNS для получения данных хоста с заданным именем хоста, и GetHostByAddress(), который также посылает назад эти данные, но в этот раз с помощью адреса. Оба метода возвращают объект IPHostEntry.

HostEntry wroxHost = Dns.Resolve("www.microsoft.com");

HostEntry wroxHostCopy = Dns.GetHostByAddress("234.234.234.234");

В этом коде оба объекта HostEntry будут содержать данные серверов Microsoft.com.

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


На Facebook В Твиттере В Instagram В Одноклассниках Мы Вконтакте
Подписывайтесь на наши страницы в социальных сетях.
Будьте в курсе последних книжных новинок, комментируйте, обсуждайте. Мы ждём Вас!

Похожие книги на "C# для профессионалов. Том II"

Книги похожие на "C# для профессионалов. Том II" читать онлайн или скачать бесплатно полные версии.


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

Все книги автора Симон Робинсон

Симон Робинсон - все книги автора в одном месте на сайте онлайн библиотеки LibFox.

Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

Отзывы о "Симон Робинсон - C# для профессионалов. Том II"

Отзывы читателей о книге "C# для профессионалов. Том II", комментарии и мнения людей о произведении.

А что Вы думаете о книге? Оставьте Ваш отзыв.