0

我的应用程序使用 xml 配置文件将以下连接字符串存储到程序中使用的数据库中(括号中的信息已针对本文进行了更改)。

<add name="VetDAR.My.MySettings.VDARSQLDBASEConnectionString" connectionString="Data Source=[DATASOURCE];Initial Catalog=[INITIAL CATALOG];User ID=[UID];Password=[PASSWORD]" providerName="System.Data.SqlClient" />

我的程序还使用注册表项来获取大量信息和程序设置。是否可以利用 xml 文件中此连接字符串中的注册表项中存储的数据库连接信息?即,如果我有一个数据源键值,我可以将上述连接字符串中的 [DATASOURCE] 替换为注册表值吗?

我知道如何在我的应用程序中的普通 vb.net 表单中执行此操作,但我不知道如何(或者甚至可能)从 xml 文件中调用注册表值。或者,是否可以覆盖 Visual Studio 的默认行为并强制数据集使用我可以调用注册表值的硬编码连接字符串?

4

1 回答 1

0

如何从配置文件中获取 connectionString,并将其传递给您的数据库连接对象。

但是在将它传递给数据库之前,您需要替换需要替换的值。因此,您的连接字符串将显示为:

Data Source=[DATASOURCE];Initial Catalog=[INITIAL CATALOG];User ID=[UID];Password=[PASSWORD]

然后你传递给数据库:

Dim connString As String = GetConnectionStringFromXML()
MyDatabase.ConnectionString = connString.Replace("[UID]", GetRegistryValue("UID").Replace("[INITIAL CATALOG]",GetRegistryValue("DatabaseName"))

……

于 2012-09-26T04:40:47.817 回答