N 层数据应用程序概述

“N 层”数据应用程序是指分为多个层的数据应用程序。 这种应用程序又称为“分布式应用程序”和“多层应用程序”,它们将处理分为多个部分,并在分布于客户端和服务器之间的相互独立的层中执行。 开发访问数据的应用程序时,应该清楚地界定组成应用程序的各个层。

典型的 N 层应用程序包括表示层、中间层和数据层。 在 N 层应用程序中,分离各层最简单的方法是为要包括在应用程序中的每一层创建相互独立的项目。 例如,表示层可以是 Windows 窗体应用程序,而数据访问逻辑可以是位于中间层中的类库。 此外,表示层可以通过类似服务的服务与中间层中的数据访问逻辑通信。 通过将应用程序组件分离到单独的层中,可以提高应用程序的可维护性和可伸缩性。 该结构之所以具有这种优点,是因为它有利于采用可应用于单个层而无需重新设计整个解决方案的新技术。 另外,N 层应用程序通常将敏感信息存储在中间层中,以便将这些信息与表示层隔离。

Visual Studio 包含多项有助于开发人员创建 N 层应用程序的功能:

表示层

“表示层”是指用户与应用程序进行交互时所在的层。 它通常还包含附加的应用程序逻辑。 典型的表示层组件包括:

表示层通常使用服务引用(例如 Visual Studio 中的 Windows Communication Foundation 服务和 WCF 数据服务 应用程序)访问中间层。 它并不直接访问数据层。 表示层与数据层的通信是通过中间层中的数据访问组件来完成的。

中间层

“中间层”是指表示层与数据层用于相互通信的层。 典型的中间层组件包括:

  • 业务逻辑,例如业务规则和数据验证。

  • 数据访问组件和逻辑,例如:

下图显示了 Visual Studio 中提供的功能和技术及其可能在 N 层应用程序中间层中的用途。

中间层

中间层组件

中间层通常使用数据连接来连接至数据层。 此数据连接通常存储在数据访问组件中。

数据层

从本质上说,“数据层”是存储应用程序数据的服务器(例如,运行 SQL Server 的服务器)。

下图显示了 Visual Studio 中提供的功能和技术及其可能在 N 层应用程序数据层中的用途。

数据层

数据层组件

数据层不能从表示层中的客户端直接访问。 实际上,表示层和数据层之间的通信是通过中间层中的数据访问组件来完成的。

关于 N 层开发的帮助

以下主题提供了有关开发 N 层应用程序的信息:

如何:将数据集和 TableAdapter 分离到不同的项目中

演练:创建 N 层数据应用程序

演练:向 N 层数据应用程序添加验证

N-Tier and Remote Applications with LINQ to SQL

请参见

任务

演练:创建 N 层数据应用程序

参考

Attach

概念

Visual Studio 2012 中针对数据应用程序开发的新增功能

在 Visual Studio 中使用数据集

其他资源

分层更新

在 Visual Studio 中访问数据