连接到 Windows 窗体应用程序中的数据
Visual Studio 提供了一些工具,用于将应用程序连接到来自许多不同来源(如数据库、Web 服务及对象)的数据。 如果正在使用 Visual Studio 中的数据设计工具,则通常不必为窗体或组件显式创建连接对象。 连接对象通常作为完成一个数据向导或将数据对象拖动到窗体的结果来创建。 若要将应用程序连接到数据库、Web 服务或对象中的数据,请通过从 “数据源”窗口 中选择**“添加新数据源”**来运行 数据源配置向导。
下面的关系图显示通过执行 TableAdapter 查询连接到数据以获取数据并在 Windows 应用程序中的窗体上显示数据时的标准操作流。
在某些情况下,您可能会发现不借助于任何数据设计工具来创建连接对象很方便。 有关以编程方式创建连接的信息,请参见 连接到数据源 (ADO.NET)。
提示
有关将 Web 应用程序连接到数据的信息,请参见 ASP.NET 数据访问。
将 Windows 窗体应用程序连接到数据的演练
下面列出了与在 Windows 窗体应用程序中连接到数据相关的主题。
主题 |
---|
创建连接
使用 Visual Studio 时,连接是使用“添加/修改连接”对话框(通用)进行配置的。 当在一个数据向导或服务器资源管理器/数据库资源管理器中编辑或创建连接时,或在**“属性”窗口中编辑连接属性时,将显示“添加连接”**对话框。
执行下列操作之一时将自动配置数据连接:
操作 |
说明 |
---|---|
运行 数据源配置向导。 |
当在“数据源配置向导”中选择数据库路径时,将配置连接。 有关更多信息,请参见如何:连接到数据库中的数据。 |
在“TableAdapter 配置向导”中创建连接。 有关更多信息,请参见如何:创建 TableAdapter。 |
|
在“TableAdapter 查询配置向导”中创建连接。 有关更多信息,请参见如何:创建 TableAdapter 查询。 |
|
将项从“数据源”窗口拖动到“Windows 窗体设计器”或“组件设计器”时,将创建连接对象。 有关更多信息,请参见 在 Visual Studio 中将控件绑定到数据。 |
|
向服务器资源管理器/数据库资源管理器中添加新数据连接。 |
“服务器资源管理器/数据库资源管理器”中的数据连接将显示在数据向导的可用连接列表中。 有关更多信息,请参见How to: Add New Data Connections in Server Explorer/Database Explorer。 |
连接字符串
连接字符串可存储于编译的应用程序或应用程序配置文件中。 有关更多信息,请参见如何:保存和编辑连接字符串。
连接信息和安全性
由于打开连接涉及获得对重要资源(数据库)的访问,因此配置和使用连接经常存在安全性问题。
如何保护应用程序及其对数据源访问的安全取决于系统的结构。 例如,在基于 Web 的应用程序中,用户通常获得对 Internet 信息服务的匿名访问,因此不提供安全身份验证凭据。 在此情况下,应用程序将维护自己的登录信息并使用它(而不是任何特定用户信息)来打开连接和访问数据库。
安全说明 |
---|
存储连接字符串的详细信息(如密码)可能会影响应用程序的安全性。 若要控制对数据库的访问,一种较为安全的方法是使用 Windows 集成安全性。 有关更多信息,请参见保护连接信息 (ADO.NET)。 |
在 Intranet 或多层应用程序中,可以利用 Windows、IIS 和 SQL Server 提供的集成安全性选项。 在该模型中,用户在本地网络的身份验证凭据也用于访问数据库资源,并且在连接字符串中不使用任何显式用户名或密码。 (通常,通过组在数据库服务器计算机上建立权限,因此您不必为可能访问数据库的每个用户建立单个的权限。)在该模型中,您根本不必存储连接的登录信息,并且不需要任何额外步骤来保护连接字符串信息。
有关安全性的更多信息,请参见以下页:
“服务器资源管理器/数据库资源管理器”中的设计时连接
**“服务器资源管理器/数据库资源管理器”**为您提供一种创建到数据源的设计时连接的方式。 它允许您浏览可用的数据源,显示有关它们包含的表、列及其他元素的信息,以及编辑和创建数据库元素。
您的应用程序不直接使用**“服务器资源管理器/数据库资源管理器”**中的可用连接。 Visual Studio 在设计时使用这些连接来处理数据库。 有关更多信息,请参见Visual Database Tools。
例如,您可以在设计时使用**“服务器资源管理器/数据库资源管理器”**创建到数据库的连接。 稍后在设计窗体时,可以浏览数据库,从表中选择列,并将它们拖动到数据集设计器上。 这将在您的数据集中创建 TableAdapter。 还将创建一个新的连接对象(该对象是新创建的 TableAdapter 的一部分)。
有关设计时连接的信息独立于特定的项目或解决方案存储在本地计算机上。 因此,在应用程序中工作时建立了设计时连接以后,每当您在 Visual Studio 中工作时它都将出现在**“服务器资源管理器/数据库资源管理器”中(只要该连接指向的服务器可用)。 有关使用“服务器资源管理器/数据库资源管理器”**和创建设计时连接的更多信息,请参见How to: Add New Data Connections in Server Explorer/Database Explorer。