- •Базы данных и информационные системы. Основные понятия, классификация. Корпоративные информационные системы.
- •Виды и сравнительная характеристика архитектуры информационных систем на основе баз данных.
- •Этапы создания и жизненный цикл информационной системы. Модели и стандарты жизненного цикла – их краткая характеристика.
- •Каскадное проектирование информационной системы (ис). Поэтапная модель с промежуточным контролем. Преимущества и недостатки. Стадии и этапы создания ис в соответствии с гост 34.601-90.
- •Спиральное проектирование информационной системы. Гибкие методологии разработки. Примеры. Преимущества и недостатки.
- •Назначение и классификация case средств. Примеры.
- •Системы контроля версий (скв). Назначение, классификация, примеры. Репозиторий. Сервис GitHub. Организация коллективной работы над проектом с помощью скв.
- •Общая характеристика системы Git. Структура репозитория. Алгоритмы и принципы работы. Использование Visual Studio с Git.
- •Case средства для моделирования баз данных. Общая характеристика eRwin Data Modeler. Функции и характеристика используемых нотаций.
- •Использование eRwin Data Modeler для логического и физического моделирование баз данных. Нотация idef1x. Прямое и обратное проектирование. Поддерживаемые субд.
- •Современные клиент-серверные субд. Общая характеристика субд ms sql Server: версии, редакции, основные службы и компоненты, режимы работы сервера.
- •Субд ms sql Server: системные базы данных и таблицы, структура данных на физическом уровне (файлы баз данных, журналы транзакций, файловые группы и др.).
- •Субд ms sql Server: конфигурирование и администрирование (создание и удаление баз данных, задание свойств, шифрование, создание объектов баз данных, перемещение баз данных и др.).
- •Архитектура и фундаментальные классы ado.Net. Типы поставщиков данных и их обобщенная структура.
- •Объект Connection. Свойства, методы, примеры использования. Обработка ошибок.
- •Объект Cоmmand. Свойства, методы, примеры использования.
- •Выполнение параметризованных команд с использованием объекта Command. Атака внедрением.
- •Хранимые процедуры. Вызов хранимых процедур в ado .Net, передача параметров.
- •Объект DataReader. Свойства, методы, примеры использования.
- •Объект DataAdapter. Свойства, методы, примеры использования для наполнения и обновления DataSet
- •Объект DataSet. Структура, свойства, методы, примеры использования.
- •Цикл работы с данными с использованием графического интерфейса Windows Forms. Характеристика источников данных для элементов управления
- •Общая характеристика основных элементов управления Windows Form, позволяющих осуществлять связывание с источниками данных. Простое и сложное связывание.
- •Класс Binding. Назначение, свойства, методы, примеры использования.
- •Класс BindingSource. Назначение, свойства, методы, примеры использования.
- •Класс BindingSource. Организация фильтрации записей. Вывод связных записей из двух источников данных. Примеры фрагментов кода.
- •Использование средств Visual Studio для разработки приложений баз данных на основе технологии связывания элементов управления с данными. Класс BindingNavigator.
- •Общая характеристика Web-технологий для построения приложений баз данных. Клиент-серверное взаимодействие по протоколу http. Asp.Net. Жизненный цикл страницы asp .Net.
- •Архитектура, история и перспективы технологии asp.Net. Сравнение технологий Web Forms asp.Net и mvc asp.Net. Компоненты приложения Web Forms asp.Net.
- •Asp.Net страницы. Master Pages. Объекты Page, Session, Application, Cache, Request, Response, Server, Session, User.
- •Конфигурирование приложений asp.Net. Типы, структура и состав файлов конфигурации. Способы обращения к разделам
- •Группы элементов управления asp.Net. Серверные элементы управления html. Установка атрибутов и свойств. События элементов управления и их обработка.
- •Web элементы управления asp.Net. События элементов управления и их обработка. Механизм AutoPostBack.
- •Элементы управления проверки достоверности asp.Net.
- •Способы хранения состояния web приложения asp.Net.
- •Связывание элементов управления Web Form с источниками данных. Способы связывания. Примеры.
- •Связывание элементов управления Web Form со списками данных. Примеры.
- •Элементы управления Web Form - источники данных. Элемент SqlDataSource и его использование для работы с реляционными данными. Выполнение параметризованных команд с использованием SqlDataSource.
- •Элементы Web Form - потребители данных. Элементы управления, связанные с данными и их краткая характеристика. Элементы управления для работы с табличными данными.
- •Элемент управления GridView. Использование шаблонов в GridView.
- •Реализация шаблона mvc (Model View Controller) в asp.Net и Visual Studio.
- •Общая характеристика контроллеров (Controllers): создание, методы, методы действий, возвращаемые результаты, способы вызова. Примеры.
- •Создание класса, реализующего интерфейс iController.
- •Создание контроллера за счет наследования от класса Controller
- •Способы получения данных контроллером. Стандартный привязчик DefaultModelBinder. Примеры.
- •Передача данных из метода действия контроллера в представление. Примеры.
- •Общая характеристика представлений (Views): назначение, создание, вызов из контроллера. Строго типизированные представления. Примеры.
- •Движок Razor. Выражения кода и строки кода. Хелперы, шаблонные хелперы. Примеры.
- •Выражениям кода
- •Блоку кода.
- •Мастер-страницы. Частичные представления. Примеры.
- •Общая характеристика моделей. Entity Framework.
- •Маршрутизация url запросов asp.Net mvc приложением.
- •Общая характеристика технологии linq и интерфейсов для работы с различными источниками данных.
- •Операция запроса в linq. Способы записи запроса (синтаксисы записи). Выполнение запроса.
- •Запросы linq для осуществления фильтрации, сортировки и группировки. Примеры для различных способов записи.
- •Запросы linq для обращения к двум и более последовательностям. Соединение. Примеры для различных способов записи.
- •Правила построения выражений запросов в linq. Аналогии с sql. Пример сложного выражения.
- •Техническое задание на разработку информационной системы: основные разделы и их содержание.
- •Руководство программиста информационной системы: назначение документа, его разделы и их содержание.
- •Руководство пользователя информационной системы: назначение документа, его разделы и их содержание.
- •6. Рекомендации по освоению.
Связывание элементов управления Web Form со списками данных. Примеры.
Связывание с простыми списками данных (repeated-value binding):
При связывании списка с данными создаются элементы пользовательского интерфейса для каждого элемента списка.
Каждый элемент содержит текст (показываемый пользователю) и необязательное значение (которое не показывается)
Используется для простых списочных ЭУ:
<asp:ListBox>
Единственный или множественный выбор
<asp:DropDownList>
<asp:RadioButtonList>
<asp:CheckBoxList>
Алгоритм связывания с простыми списками данных:
Шаги для связывания с простыми списками данных
Создать списочный ЭУ
Создать коллекцию
Задать ЭУ значение DataSource
Задать (необязательно) поля DataTextField и DataValueField
Вызвать метод DataBind()
Пример:
protected void Page_Load(object sender, System.EventArgs e)
{
if (!Page.IsPostBack) {
// Create the data source.
Hashtable ht = new Hashtable();
ht.Add("Lasagna", "Key1");
ht.Add("Spaghetti", "Key2");
ht.Add("Pizza", "Key3");
// Set the DataSource property for the controls.
Select1.DataSource = ht;
Select2.DataSource = ht;
Listbox1.DataSource = ht;
DropdownList1.DataSource = ht;
CheckList1.DataSource = ht;
OptionList1.DataSource = ht;
// Bind the controls.
this.DataBind();
}
Пример источника данных (Data Source): |
Пример связывания со списком данных: |
DataView GetSampleData() { DataSet ds; SqlConnection cxn; SqlDataAdapter adp; cxn = new SqlConnection("server=localhost; " + "uid=sa;pwd=;database=Northwind"); adp = new SqlDataAdapter( "select CategoryID, CategoryName from Categories", cxn); ds = new DataSet(); adp.Fill(ds, "Categories"); return ds.Tables["Categories"].DefaultView; } |
void Page_Load(object s, EventArgs e) { ListBox1.DataSource = GetSampleData(); ListBox1.DataValueField = "CategoryID"; ListBox1.DataTextField = "CategoryName"; ListBox1.DataBind(); } <asp:ListBox id="ListBox1" runat="server" /> void Page_Load(object s, EventArgs e) { ListBox1.DataBind(); } <asp:ListBox id="ListBox1" runat="server" DataSource=<%# GetSampleData() %> DataValueField=“CategoryID” DataTextField=“CategoryName” /> |
Элементы управления Web Form - источники данных. Элемент SqlDataSource и его использование для работы с реляционными данными. Выполнение параметризованных команд с использованием SqlDataSource.
Типы элементов – источников данных:
для работы с табличными источниками данных
SqlDataSource,
AccessDataSource и
ObjectDataSource
для работы с иерархическими данными
XmlDataSource и
SiteMapDataSource
Пример описания источника данных:
<asp:AccessDataSource ID="AccessDataSource1"
runat="server"
DataFile="~/App_Data/guestbook.mdb"
SelectCommand="SELECT [WriteDate], [UserName], [UserMail], [Message] FROM [guestbook]”>
</asp:AccessDataSource>
Класс SqlDataSource объединяет в себе возможности SqlConnection и SqlDataAdapter (плюс дополнительные).
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:DemoBaseConnectionString1 %>"
ProviderName="<%$ ConnectionStrings:DemoBaseConnectionString1.ProviderName %>"
</asp:SqlDataSource>
<asp:SqlDataSource ID="sourceEmployees" runat="server"
ProviderName="System.Data.SqlClient"
ConnectionString="<%$ ConnectionStrings:Northwind %>"
SelectCommand="SELECT EmployeeID, FirstName, LastName, Title, City FROM Employees"
UpdateCommand="UPDATE Employees SET
FirstName=@FirstName, LastName=@LastName,
Title=@Title, City=@City FROM Employees WHERE
EmployeeID=@EmployeeID">
</asp:SqlDataSource>
Извлечение записей:
Логика команд SqlDataSource применяется через четыре свойства:
SelectCommand,
InsertCommand,
UpdateCommand
DeleteCommand;
все они принимают строку.
Строка может быть SQL-кодом (в этом случае соответствующее свойство SelectCommandType, InsertCommandType, UpdateCommandType или DeleteCommandType должно быть установлено в Text — значение по умолчанию)
либо именем хранимой процедуры (в этом случае типом команды является StoredProcedure).
Пример извлечения записей:
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:toplivoConnectionString1 %>"
DeleteCommand="DELETE FROM [Fuels] WHERE [FuelID] = @FuelID"
InsertCommand="INSERT INTO [Fuels] ([FuelType], [FuelDensity]) VALUES (@FuelType, @FuelDensity)"
SelectCommand="SELECT [FuelID], [FuelType], [FuelDensity] FROM [Fuels]"
UpdateCommand="UPDATE [Fuels] SET [FuelType] = @FuelType, [FuelDensity] = @FuelDensity WHERE [FuelID] = @FuelID">
<DeleteParameters>
<asp:Parameter Name="FuelID" Type="Int32" />
</DeleteParameters>
<InsertParameters>
<asp:Parameter Name="FuelType" Type="String" />
<asp:Parameter Name="FuelDensity" Type="Single" />
</InsertParameters>
<UpdateParameters>
<asp:Parameter Name="FuelType" Type="String" />
<asp:Parameter Name="FuelDensity" Type="Single" />
<asp:Parameter Name="FuelID" Type="Int32" />
</UpdateParameters>
</asp:SqlDataSource>
Параметризированные команды:
Типы параметров |
||
Источник |
Управляющий дескриптор |
Описание |
Свойство элемента управления |
<asp:ControlParameter> |
Свойство другого элемента управления на странице |
Строковое значение запроса |
<asp:QueryStringParameter> |
Значение из текущей строки запроса |
Значение состояния сеанса |
<asp:SessionParameter> |
Значение, сохраненное в текущем сеансе пользователя |
Значение cookie-набора |
<asp:CookieParameter> |
Значение из любого cookie-набора, присоединенного к текущему запросу. |
Значение профиля |
<asp:ProfileParameter> |
Значение из текущего пользовательского профиля |
Переменная формы |
<asp:FormParameter> |
Значение, отправленное странице от элемента управления вводом. Обычно вместо этого будет использоваться свойство элемента управления, но если у соответствующего элемента управления отключена поддержка состояния представления, может понадобиться извлечь значение непосредственно из коллекции Forms |
Значение маршрута |
<asp:RouteParameter> |
Значение из маршрутизированного URL |
Программная установка |
<asp:Parameter> |
Базовый класс, от которого наследуются все прочие параметры. Никогда не устанавливается автоматически, поэтому он имеет смысл, когда для установки значения параметра вручную используется код |
