Мегаобучалка Главная | О нас | Обратная связь


Компоненты доступа к данным



2019-12-29 297 Обсуждений (0)
Компоненты доступа к данным 0.00 из 5.00 0 оценок




 

В профессиональных, хорошо спроектированных приложениях код взаимодействия с базой данных никогда не встраивается непосредственно в код, лежащий в основе web-страницы. В данной дипломной работе некоторые фрагменты текста отсутствуют или замещены на текст не соответствующий теме этого диплома. Отсутствуют или не соответствуют некоторые необходимые формулы, расчеты, диаграммы и таблицы. Для получения оригинальной версии работы пишите на электронный адрес, указанный в конце дипломной работы, в заключении. Чтобы выполнить операцию с базой данных, необходимо создать экземпляр класса и вызвать соответствующий метод.

При разработке дипломного проекта был использован именно такой подход. Для каждой таблицы базы данных, с которой будет взаимодействовать web-приложения, создан свой компонент доступа к данным, включающий все необходимые методы. Методы объявлены как статические, таким образом, вызывать их можно непосредственно через имя класса, не создавая его экземпляр. Каждый метод осуществляет обработку ошибок при взаимодействии с БД и информирует об этом web-страницу, из которой он был вызван.

Например, в компоненте данных OrdersDB, находятся все необходимые методы для управления заказами покупателей, взаимодействующие с таблицами базы данных Orders и OrderDetails. Вызов метода, который возвращает позиции заказа с указанным номером, в коде web-страницы будет выглядеть следующим образом:

OrdersDB. GetOrderDetails(orderID);

При этом весь код взаимодействия с базой данных находится в этом методе:

public class OrdersDB

{

public static DataSet GetOrderDetails (int orderID)

{

SqlConnection conn = new SqlConnection (WebConfigurationManager. ConnectionStrings ["connStr"].ConnectionString);

SqlCommand cmd = new SqlCommand ("GetOrderDetails", conn);

…………………………………………………;

cmd. Parameters. Add ("OrderID", SqlDbType. Int);

cmd. Parameters ["OrderID"].Value = orderID;

…………………………………………….;

SqlDataAdapter da = new SqlDataAdapter(cmd);

try

{

da. Fill(ds);

………….;

return ds;

}

catch (SqlException)

{

……………;

return null;

}

}

)

На рисунке 5 изображена диаграмма классов всех компонентов доступа к данным.

 

Рис. 5 "Диаграмма классов компонентов доступа к данным"

 

Примечание.

· ArtistDB – взаимодействие с таблицей Artists(Исполнители);

· OrdersDB – взаимодействие с таблицами Orders(Заказы) и OrderDetails (Детали заказа);

· TypeProductDB – взаимодействие с таблицей TypeProduct (Категории продукции);

· CatalogDB – взаимодействие с таблицей Catalogue(Каталог);

· ResponsesDB – взаимодействие с таблицей Responses(Отзывы);

· TypePaymentDB – взаимодействие с таблицей TypePayment (Способы оплаты);

 

Привязка данных

Помимо механизмов извлечения информации из источника данных, современные web-приложения нуждаются в удобном способе отображения этой информации на web-странице. В данной дипломной работе некоторые фрагменты текста отсутствуют или замещены на текст не соответствующий теме этого диплома. Отсутствуют или не соответствуют некоторые необходимые формулы, расчеты, диаграммы и таблицы. Для получения оригинальной версии работы пишите на электронный адрес, указанный в конце дипломной работы, в заключении. Это означает, что не нужно вручную программировать логику циклического чтения строк, состоящих из многочисленного количества столбцов, и манипулирования отдельными элементами управления.

Например, чтобы отобразить на web-странице таблицу, содержащую позиции заказа, необходимо выполнить следующий код:

GridViewOrderDetails. DataSource = OrdersDB. GetOrderDetails(orderID); GridViewOrderDetails. DataBind();

Метод GetOrderDetails возвращает объект DataSet, содержащий результаты запроса к базе данных. Для того чтобы отобразить их на web-странице, используя привязку данных, необходимо присвоить DataSet специальному полю DataSource элемента управления (в данном случае GridView) и вызвать метод DataBind() элемента управления, чтобы выполнить привязку. В итоге на web-странице будет изображена таблица, содержащая позиции заказа с заданным номером.

Привязку данных можно также осуществлять с помощью элементов управления источниками данных. При разработке дипломного проекта использовался элемент управления источниками данных – ObjectDataSource, который для привязки данных использует компоненты доступа к данным. В данной дипломной работе некоторые фрагменты текста отсутствуют или замещены на текст не соответствующий теме этого диплома. Отсутствуют или не соответствуют некоторые необходимые формулы, расчеты, диаграммы и таблицы. Для получения оригинальной версии работы пишите на электронный адрес, указанный в конце дипломной работы, в заключении. Ниже приведён пример использования элемента управления источником данных ObjectDataSource при отображении отзывов покупателей об альбоме с заданным номером:

<asp: ObjectDataSource ID= "ObjectDataSource1" SelectMethod= "GetResponse" TypeName= "ComponentsDB. ResponseDB" runat= "server">

<SelectParameters>

<asp: QueryStringParameter Name= "ProductID" QueryStringField= "ProductID" Type= "Int32" />

………………….

</asp: ObjectDataSource>

<asp: GridView ID= "ResponsesGridView" DataSourceID=" ObjectDataSource1" runat= "server" />

Всё это выполняется декларативно в файле дескрипторов web-страницы. При этом можно указывать, откуда ObjectDataSource должен брать параметры запроса, если они необходимы. В данном случае параметр ProductID берётся из строки запроса.

 




2019-12-29 297 Обсуждений (0)
Компоненты доступа к данным 0.00 из 5.00 0 оценок









Обсуждение в статье: Компоненты доступа к данным

Обсуждений еще не было, будьте первым... ↓↓↓

Отправить сообщение

Популярное:
Как вы ведете себя при стрессе?: Вы можете самостоятельно управлять стрессом! Каждый из нас имеет право и возможность уменьшить его воздействие на нас...
Почему люди поддаются рекламе?: Только не надо искать ответы в качестве или количестве рекламы...
Модели организации как закрытой, открытой, частично открытой системы: Закрытая система имеет жесткие фиксированные границы, ее действия относительно независимы...
Почему двоичная система счисления так распространена?: Каждая цифра должна быть как-то представлена на физическом носителе...



©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (297)

Почему 1285321 студент выбрали МегаОбучалку...

Система поиска информации

Мобильная версия сайта

Удобная навигация

Нет шокирующей рекламы



(0.012 сек.)