|
|||
Практическая работа №11. Ход работыПрактическая работа №11 Тема: Создание клиентской части ПО ИС. Цель: Научиться создавать клиентское приложение для работы с базой данных с применением встроенных инструментов на MS Visual C# 2010. Ход работы Для работы с сетью на клиентских рабочих станциях должно быть установлено клиентское программное обеспечение. Это программное обеспечение обеспечивает доступ к ресурсам, расположенным на сетевом сервере. Тремя наиболее важными компонентами клиентского программного обеспечения являются редиректоры (redirector), распределители (designator) и имена UNC (UNCpathnames). Редиректоры Редиректор – сетевое программное обеспечение, которое принимает запросы ввода/вывода для удаленных файлов, именованных каналов или почтовых слотов и затем переназначает их сетевым сервисам другого компьютера. Редиректор перехватывает все запросы, поступающие от приложений, и анализирует их. Фактически существуют два типа редиректоров, используемых в сети: - Клиентский редиректор (clientredirector); - Серверный редиректор (serverredirector). Оба редиректора функционируют на представительском уровне модели OSI. Когда клиент делает запрос к сетевому приложению или службе, редиректор перехватывает этот запрос и проверяет, является ли ресурс локальным (находящимся на запрашивающем компьютере) или удаленным (в сети). Если редиректор определяет, что это локальный запрос, он направляет запрос центральному процессору для немедленной обработки. Если запрос предназначен для сети, редиректор направляет запрос по сети к соответствующему серверу. По существу, редиректоры скрывают от пользователя сложность доступа к сети. После того как сетевой ресурс определен, пользователи могут получить к нему доступ без знания его точного расположения. Распределители Распределитель (designator) представляет собой часть программного обеспечения, управляющую присвоением букв накопителя (driveletter) как локальным, так и удаленным сетевым ресурсам или разделяемым дисководам, что помогает во взаимодействии с сетевыми ресурсами. Когда между сетевым ресурсом и буквой локального накопителя создана ассоциация, известная также как отображение дисковода (mappingadrive), распределитель отслеживает присвоение такой буквы дисковода сетевому ресурсу. Затем, когда пользователь или приложение получат доступ к диску, распределитель заменит букву дисковода на сетевой адрес ресурса, прежде чем запрос будет послан редиректору.
Имена UNC Редиректор и распределитель являются не единственными методами, используемыми для доступа к сетевым ресурсам. Большинство современных сетевых операционных систем, так же как и Windows95, 98,NT, распознают именаUNC(UniversalNamingConvention— Универсальное соглашение по наименованию). UNC представляют собой стандартный способ именования сетевых ресурсов. Эти имена имеют форму\\Имя_сервера\имя_ресурса. Способные работать сUNCприложения и утилиты командной строки используют имена UNC вместо отображения сетевых дисков. Клиентское и серверное программное обеспечение Некоторые из сетевых операционных систем, в том числе WindowsNT, имеют программные компоненты, обеспечивающие компьютеру как клиентские, так и серверные возможности. Это позволяет компьютерам поддерживать и использовать сетевые ресурсы и преобладает в одноранговых сетях. В общем, этот тип сетевых операционных систем не так мощен и надежен, как законченные сетевые операционные системы. Главное преимущество комбинированной клиентско–серверной сетевой операционной системы заключается в том, что важные ресурсы, расположенные на отдельной рабочей станции, могут быть разделены с остальной частью сети. Недостаток состоит в том, что если рабочая станция поддерживает много активно используемых ресурсов, она испытывает серьезное падение производительности. Если такое происходит, то необходимо перенести эти ресурсы на сервер для увеличения общей производительности. В зависимости от функций, возлагаемых на конкретный компьютер, в его операционной системе может отсутствовать либо клиентская, либо серверная части. На рисунке 2 компьютер 1 выполняет функции клиента, а компьютер 2 – функции сервера, соответственно на первой машине отсутствует серверная часть, а на второй - клиентская. Рисунок 2 – Взаимодействие компонентов NOS
Если выдан запрос к ресурсу данного компьютера, то он переадресовывается локальной операционной системе. Если же это запрос к удаленному ресурсу, то он переправляется в клиентскую часть, где преобразуется из локальной формы в сетевой формат, и передается коммуникационным средствам. Серверная часть ОС компьютера 2 принимает запрос, преобразует его в локальную форму и передает для выполнения своей локальной ОС. После того, как результат получен, сервер обращается к транспортной подсистеме и направляет ответ клиенту, выдавшему запрос. Клиентская часть преобразует результат в соответствующий формат и адресует его тому приложению, которое выдало запрос.
Задание: - Создать клиентское приложение; Для создания клиентского приложения на Visual C# 2010 используем пример базы данных c названием DB_Book, которая была создана в лабораторной работе №2. При выполнении примеров и заданий обращайте внимание на соответствие названий БД, таблиц и других объектов проекта. 1. На Visual C# 2010 создаём приложение WindowsForms: Файл → Создать → Проект → Приложение WindowsForms (рис.1) Рисунок 1 – Создать проект
2. В проекте выбираем меню 'Сервис ⇒ Подключиться к базе данных' (рис. 2). Рисунок 2 – Подключение к БД
3. В открывшемся окне введите имя сервера и базы данных, нажмите OK (рис. 3). Рисунок 3 – Добавление подключения к БД
4. Слева в окне 'Обозреватель серверов' можно увидеть подключенную базу данных (рис. 4). Рисунок 4 – Обозреватель серверов
5. Создать 5 форм, переименовать их на FormPurchases, FormBooks, FormAuthors, FormDeliveries, FormPublish соответственно(Рис. 5,6,7). Рисунок 5 – Добавление формы
Рисунок 6 – Форма Windows Form Рисунок 7 – Пустая форма
6. На каждую форму добавить по компоненту типа DataGridView (рис. 8). Рисунок 8 – Добавление компонента DataGridView на пустую форму
7. Выберем источник данных, для это во вкладке нажать 'Выберите источник данных ⇒ Добавить источник данных проекта ⇒ Базы данных ⇒ Набор данных ⇒ Далее' и выбрать необходимые таблицы (рис. 9, 10, 11, 12). Рисунок 9 – Выбор источника данных
Рисунок 10 – Источник данных БД
Рисунок 11 – Выбор модели БД Рисунок 12 – Выбор объектов БД
8. На основной форме создать 4 компонента типа Button и в соответствующих методах Click вызвать соответствующие формы с помощью кода: для FormAuthors: FormAuthors myForm3 = new FormAuthors(); myForm3.Show(); для FormPurchases: FormPurchases myForm3 = new FormPurchases(); myForm3.Show(); для FormBooks: FormBooks myForm4 = new FormBooks(); myForm4.Show(); для FormDeliveries: FormDeliveries myForm5 = new FormDeliveries(); myForm5.Show(); для FormPublish: FormPublish myForm6 = new FormPublish(); myForm6.Show(); Рисунок 13 – Компоненты типа Button на основной форме
9. На форму добавить компонент типа BindingNavigator. Настроить у BindingNavigator свойство BindingSource для связи с созданной таблицей (значение должно совпадать со значением свойства элемента DataGridView). Добавить компонент типа BindingNavigator на остальные формы (рис. 14). Рисунок 14 – Добавленный компонент типа BindingNavigator
10. Проверить работу приложения. 11. На форму FormBooks добавить 3 компонента типа TextBox и 2 компонента типа ComboBox. У 1-го компонента TextBox изменить свойства: (DataBinding) Text booksBindingSource - ID Книги У 2-го компонента TextBox изменить свойства: (DataBinding) Text booksBindingSource – Название У 1-го компонента ComboBox изменить свойства: (DataBinding) SelectedValue booksBindingSource – Code_author DataSource authorsBindingSourceDisplayMember Автор ValueMember Code_author У 3-го компонента TextBox изменить свойства: (DataBinding) Text booksBindingSource - Количество страниц У 2-го компонента ComboBox изменить свойства: (DataBinding) SelectedValue booksBindingSource – Code_publish DataSourcepublishinghouseBindingSource DisplayMember Публикация ValueMember Code_publish (рис. 15) Рисунок 15 – Добавленные компоненты TextBox и ComboBox
12. У компонента DataGridView убрать все галочки со свойств редактирования и добавления (рис. 16). Рисунок 16 – Свойства компонента DataGridView 13. На форму FormBooks добавить компонент типа Button (кнопка обновления данных), свойство Text изменить на «Обновить» и прописать событие Click: this.Validate(); this.booksBindingSource.EndEdit(); this.booksTableAdapter.Update(this.dB_BOOKSDataSet.Books); Рисунок 17 – Добавить компонент Button (кнопка обновления данных)
14. Аналогично для остальных форм добавить элементы типа TextBox. 15. Проверить работу приложения. 16. На форму FormBooks добавить 5 компонентов типа Button (рис. 18). У 1-го компонента Button изменить свойства и метод: int bb = dataGridView1.CurrentCell.RowIndex; booksBindingSource.Filter = "Code_Publish = " + dataGridView1[4,bb].Value; У 2-го компонента Button изменить свойства и метод: int bb = dataGridView1.CurrentCell.RowIndex; booksBindingSource.Filter = "Title_book = " + dataGridView1[1, bb].Value; У 3-го компонента Button изменить свойства и метод: int bb = dataGridView1.CurrentCell.RowIndex; booksBindingSource.Filter = "Code_Author = " + dataGridView1[0, bb].Value; У 4-го компонента Button изменить свойства и метод: int bb = dataGridView1.CurrentCell.RowIndex; booksBindingSource.Filter = "Pages = " + dataGridView1[3, bb].Value; У 5-го компонента Button изменить свойства и метод: booksBindingSource.Filter = ""; Рисунок 18 – Готовая форма FormBooks
17. Аналогично для остальных форм добавить элементы типа Button, которые будут запускать фильтры по соответствующим значениям полей текущей записи. 18. Проверить работу приложения. - Ответить на контрольные вопросы.
Контрольные вопросы 1. Что такое редиректор? 2. Типы редиректоров. 3. Что такое распределитель? 4. Что такое имя UNC? 5. Главное преимущество комбинированной клиентско–серверной сетевой ОС.
|
|||
|