5

我有一个存储在 .config 文件中的连接字符串,我不知道如何从中读取。
我四处搜索,发现最多的是关于如何读取存储在 AppSetting 中的键/值对。但是这个文件的组织方式不同。我只需要获取 ConnectionString 的值。
注意:我无法修改.config文件。它是给我的。

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <configSections>
        <sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
            <section name="Assessment.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
        </sectionGroup>
    </configSections>
    <userSettings>
        <Assessment.Properties.Settings>
            <setting name="ConnectionString" serializeAs="String"> //This value I need
                <value>Provider=Microsoft.ACE.OLEDB.12.0;Data Source=[%CURRENT%]\DB.mdb</value>
            </setting>
        </Assessment.Properties.Settings>
    </userSettings>
</configuration>
4

5 回答 5

6

项目的命名空间中会有 Settings 类(Assessment.Properties.Settings)

该类是自动生成的。

要访问您的连接字符串,只需使用

Assessment.Properties.Settings.Default.ConnectionString

于 2012-10-16T16:03:26.337 回答
5

使用ConfigurationManager.ConnectionStrings属性从应用程序配置文件中检索连接字符串。

您应该将连接字符串存储在配置文件的connectionStrings部分。

于 2012-10-16T16:03:37.333 回答
1
connectionString = ConfigurationManager.AppSettings["ConnectionString"];

在你的配置中

<appSettings> <add key="ConnectionString" value="whatever" /> </appSettings>
于 2012-10-16T16:16:37.797 回答
0

如果不查看自定义配置部分处理程序,我只能猜测:

在你的代码中试试这个:

   var connString = System.Configuration.ConfigurationManager.GetSection
                    ("Assessment.Properties.Settings")["ConnectionString"];

但更好的是切换到使用 Microsoft Built-in ConnectionString 部分
System.Configuration.ConnectionStringSettings

于 2012-10-16T16:07:00.823 回答
0

您可以访问“用户设置”部分,例如:

var userSection = (ConfigurationSection)ConfigurationManager.GetSection("userSettings");
于 2012-10-16T16:09:55.177 回答