Глава 8

Компоненты данных и DataSet

 

В предыдущей главе вы получили первое представление о ADO.NET и познакомились с доступом к данным, основанным на соединениях. Теперь самое время собрать ваш код доступа к данным в хорошо спроектированное приложение.

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

Здесь мы также поговорим об автономных (disconnected) данных — средстве ADO.NET, вращающемся вокруг DataSet и позволяющем взаимодействовать с данными после закрытия соединения с их источником. DataSet не является необходимым для страниц ASP.NET, однако он предоставляет вам большую гибкость для навигации, фильтрования и сортировки данных — темы, которые мы рассмотрим в этой главе.

Совет. Информация, представленная в этой главе, не слишком изменилась со времен ASP.NET 1.х. Вы будете использовать те же приемы для построения хороших компонентов базы данных, и DataSet здесь работает точно так же (наряду с некоторыми улучшениями). Более детальный взгляд на ASP.NET и на его применение с различными типами приложений .NET представлен в книге Microsoft ADO.NET 2.0 для профессионалов (Издательский дом "Вильямс", 2006).

Построение компонента доступа к данным

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

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

предыдущая    следующая страница   оглавление

337

Hosted by uCoz