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

Скачивание начинается... Если скачивание не началось автоматически, пожалуйста нажмите на эту ссылку.
Жалоба
Напишите нам, и мы в срочном порядке примем меры.
Описание книги "C# для профессионалов. Том II"
Описание и краткое содержание "C# для профессионалов. Том II" читать бесплатно онлайн.
Платформа .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
Элементы управления проверкой достоверности предоставляют метод проверки достоверности ввода пользователя (в большинстве случаев) вообще без написания какого-либо кода. Когда инициируется обратная отправка, каждый элемент управления выполняет проверку, которую он подтверждает, и изменяет соответственно свое свойство isValid. Если это свойство будет false, то ввод пользователя для элемента проверки достоверности не получил подтверждение. Страница, содержащая все элементы управления, также имеет свойство isValid: если у какого-либо из элементов управления проверкой достоверности свойство isValid задано как false, то это свойство страницы также будет иметь значение false. Это свойство можно проверять из серверного кода и действовать в соответствии с ним.
Однако элементы управления проверкой достоверности имеют вторую функцию. Они не только проверяют элементы управления во время выполнения, но могут также автоматически выводить пользователям полезные рекомендации. Если задать для свойства ErrorMessage какое угодно текстовое значение, то пользователь увидит его, когда попытается отправить назад неверные данные.
Хранящийся в ErrorMessage текст можно вывести в том месте, где расположен элемент управления проверкой достоверности или в другом месте с сообщениями обо всех других элементах управления проверкой достоверности на странице. Такое поведение достигается с помощью элемента управления ValidationSummary, который выводит, если потребуется, все сообщения об ошибках вместе с дополнительным текстом.
В браузерах, которые это поддерживают, данные элементы управления создают клиентские функции JavaScript, чтобы упростить свое поведение по проверке. Это означает, что в некоторых случат обратная пересылка даже не происходит, так как элементы управления проверкой могут в некоторых ситуациях воспрепятствовать этому и вывести сообщения об ошибках без участия сервера.
Все элементы управления проверкой наследуют из класса BaseValidator, и поэтому обладают некоторыми общими важными свойствами. Возможно, наиболее важным является рассмотренное выше свойство ErrorMessage и в этом случае свойство ControlToValidate можно считать вторым по важности. Это свойство определяет идентификатор (ID) элемента управления, который проверяется. Другим важным свойством является Display, которое определяет, поместить ли текстовое сообщение в итоговой позиции проверки (если задано как none) или в позиции проверяющего элемента. Имеется также возможность оставить место для сообщения об ошибке, даже когда оно не выводится (задавая Display как Static) или динамически выделять место, когда потребуется, что может слегка сдвигать содержимое страницы (задавая Display как Dynamic).
Мы скоро рассмотрим пример, но сначала кратко опишем различные элементы управления проверкой:
Элемент управления Описание RequiredFieldValidator Используется для проверки, ввел ли пользователь данные в элемент управления, такой как TextBox. CompareValidator Используется для проверки того, что введенные данные удовлетворяют простым требованиям, происходит сравнение с оператором set, использующим свойство Operator и свойство ValueToCompare. Operator может быть одним из Equal, GreaterThan, GraterThenEqual, LessThen, LessThenEqual, NotEqual или DataTypeCheck. Последний из них просто сравнивает тип данных ValueToCompare с данными в проверяемом элементе управления (ValueToCompare является строковым свойством, но интерпретируется как другой тип данных на основе своего содержимого). RangeValidator Проверяет, что данные в элементе управления для проверки находятся между значениями свойств MaximumValue и MinimumValue. RegularExpressionValidator Проверяет содержимое поля на основе регулярного выражения, хранящегося в ValidationExpression. Это может быть полезно для известной последовательности, такой как zip-коды, телефонные номера, IP-номера и т.д. CustomValidator Применяется для проверки данных в элементе управления с помощью специальной функции. ClientValidationFunction используется для определения клиентской функции, используемой для проверки элемента управления (это означает, к сожалению, что мы не можем использовать C#). Эта функция должна возвращать логическое значение, указывающее, была проверка успешной или нет. Альтернативно можно взять событие ServerValidate для определения серверной функции, используемой для проверки. Эта функция является обработчиком событий с булевым типом, которая получает строку, содержащую данные для проверки вместо параметра EventArgs. Мы возвращаем true, если проверка проходит успешно, иначе false.Пример серверного элемента управления
Теперь мы разберем простой пример — пришло время взглянуть на более сложный сценарий. Давайте создадим каркас приложения Web — утилиту для заказа помещения для собраний. В данный момент он будет содержать только внешний интерфейс и простую обработку событий, позже мы расширим его с помощью ADO.NET и связывания данных, чтобы включить серверную бизнес-логику.
Форма Web, которую мы собираемся создать, будет содержать поля для имени пользователя, имени события, помещения для собраний и служителей вместе с календарем для выбора даты (предполагается в этом примере, что события продолжаются в течение полного дня). Используем элементы управления проверкой для всех полей, за исключением календаря, который будет проверяться на сервере и предоставлять дату по умолчанию в случае, если ничего не было введено.
Для тестирования интерфейса пользователя мы будем также иметь на форме элемент управления Label, который можно использовать для вывода представляемых результатов.
Вначале создадим в Visual Studio новый проект приложения Web с именем PCSWebApp2. Затем мы создаем форму, которая генерируется с помощью следующего кода в WebForm1.aspx (код, генерируемый автоматически, не выделен):
<%@ Page language="c#" Codebehind="WebForm1.aspx.cs" AutoEventWireup="false" Inherits="PCSWebApp2.WebForm1" %>
<html>
<head>
<meta content=False name=vs_showGrid>
<meta content="Internet Explorer 5.0" name="vs_targetSchema>
<meta content="Microsoft Visual Studio 7.0" name=GENERATOR>
<meta content=C# name=CODE_LANGUAGE>
</head>
<body>
<form method="post" runat="server">
<h1 align="center">Enter details and set a day to initiate an event.</h1>
<br>
<table borderColor="#000000" cellSpacing="0" cellPadding="8"
rules="none" align="center" bgColor="#fff99e" border="2" width="540">
<tr>
<td vAlign="top">Your Name:</td>
<td vAlign="top">
<asp:textbox id="nameBox" runat="server" width="160px" />
<asp:requiredfieldvalidator id=validateName Runat="server"
errormessage="You must enter a name." ControlToValidate="nameBox" display="None" />
</td>
<td vAlign="center" rowSpan="4" >
<asp:calendar id="calendar" runat="server" BackColor="White" />
</td>
</tr>
<tr>
<td vAlign="top">Event Name:</td>
<td vAlign="top">
<asp:textbox id="eventBox" runat="server" width="160px" />
<asp:requiredfieldvalidator id="validateEvent" Runat="server"
errormessage="You must enter an event name."
ControlToValidate="eventBox" display="None" />
</td>
</tr>
<tr>
<td vAlign="top">Meeting Room:</td>
<td vAlign="top">
<asp:dropdownlistid="roomList" runat="server" width="160px">
<asp:ListItem Value="1">The Happy Room</asp:ListItem>
<asp:ListItem Value="2">The Angry Room</asp:ListItem>
<asp:ListItem Value="3">The Depressing Room</aspListItem>
<asp:ListItem Value="4">The Funked Out Room</asp:ListItem>
</asp:dropdownlist>
<asp:requiredfieldvalidator id="validateRoom" Runat="server"
errormessage="You must select a room."
ControlToValidate="roomList" display="None" />
</td>
</tr>
<tr>
<td vAlign= " top">Attendees: </td>
<td vAlign="top">
<asp:listbox id="attendeeList" runat="server" width="60px"
selectionmode="Multiple" rows="6">
<asp:ListItem Value="1">Bill Gates</asp:ListItem>
<asp:ListItem Value="2">Monika Lewinsky</asp:ListItem>
<asp:ListItem Value="3">Vincent Price</asp:ListItem>
<asp:ListItem Value="4">Vlad the Impaler</asp:ListItem>
Подписывайтесь на наши страницы в социальных сетях.
Будьте в курсе последних книжных новинок, комментируйте, обсуждайте. Мы ждём Вас!
Похожие книги на "C# для профессионалов. Том II"
Книги похожие на "C# для профессионалов. Том II" читать онлайн или скачать бесплатно полные версии.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.
Отзывы о "Симон Робинсон - C# для профессионалов. Том II"
Отзывы читателей о книге "C# для профессионалов. Том II", комментарии и мнения людей о произведении.