Общие сведения о N-уровневых приложениях для работы с данными

 

Опубликовано: Апрель 2016

N-уровневые приложения данных представляют собой приложения данных, разделенные на несколько уровней. Также называемые "распределенными приложениями" и "многоуровневыми приложениями", n-уровневые приложения разделяют обработку на дискретные уровни, распределенные между клиентом и сервером. При разработке приложений, обращающихся к данным, необходимо иметь четкое разделение между различными уровнями, которые составляют приложение.

Типичное n-уровневое приложение включает уровень представления, средний уровень и уровень данных. Самым простым способом разделения различных уровней является создание дискретных проектов для каждого уровня, который требуется включить в приложение. Например, уровень представления может быть приложением Windows Forms, тогда как логика доступа к данным может быть представлена библиотекой классов, расположенной на среднем уровне. Кроме того, уровень представления может взаимодействовать с логикой доступа к данным на среднем уровне через службу. Разделение компонентов приложения на разные уровни увеличивает эксплуатационную надежность и масштабируемость приложения. Это осуществляется за счет возможности применения новых технологий к какому-либо одному уровню без необходимости изменять все решение в целом. Кроме того, n-уровневые приложения обычно хранят важные сведения на среднем уровне, который изолирован от уровня представления.

Visual Studio содержит некоторые возможности, позволяющие разработчикам создавать многоуровневые приложения:

Уровень представления

Уровень представления является уровнем, на котором пользователи взаимодействуют с приложением. Часто этот уровень также содержит дополнительную логику приложения. Типичными компонентами уровня презентации являются следующие:

  • Компоненты, связывающие данные, такие как BindingSource и BindingNavigator.

  • Объектное представление данных, например, классы сущностей LINQ to SQL для использования на уровне представления.

Уровень представления обычно получает доступ к среднему уровню через служебную ссылку (например, через приложение Windows Communication Foundation Services and WCF Data Services in Visual Studio). Уровень представления не имеет непосредственного доступа к уровню данных. Уровень представления взаимодействует с уровнем данных посредством компонента доступа к данным на среднем уровне.

Средний уровень

Средний уровень является слоем, который уровни представления и данных используют для связи друг с другом. Средний уровень обычно включает в себя следующие компоненты:

  • Бизнес-логику, например проверку данных и бизнес-правила.

  • Компоненты и логика доступа к данным, например:

Следующий рисунок показывает возможности и технологии, доступные в Visual Studio, а также подходящие места их размещения на среднем уровне в многоуровневом приложении.

Компоненты среднего уровня
Средний уровень

Средний уровень обычно подключается к уровню данных с использованием подключения данных. Это подключение данных обычно хранится в компоненте доступа к данным.

Уровень данных

Уровень данных в общем случае является сервером, который хранит данные приложения (например, сервер под управлением SQL Server).

Следующий рисунок показывает возможности и технологии, доступные в Visual Studio, и подходящие места их размещения на уровне данных в многоуровневом приложении.

Компоненты уровня данных
Уровень данных

Клиент на уровне представления не может получить непосредственный доступ к уровню данных. Вместо этого для связи между уровнями представления и данных используется компонент доступа к данным на среднем уровне.

Справка по многоуровневой разработке

Следующие разделы содержат сведения о работе с многоуровневыми приложениями:

Практическое руководство. Разделение наборов данных и адаптеров таблиц на разные проекты

Пошаговое руководство. Создание многоуровневого приложения для работы с данными

Пошаговое руководство. Добавление проверки данных в многоуровневое приложение

Многоуровневые и удаленные приложения с LINQ to SQL

См. также

Attach
Пошаговое руководство. Создание многоуровневого приложения для работы с данными
Иерархическое обновление
Работа с наборами данных в Visual Studio
Доступ к данным в Visual Studio