首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WPF中的ConfigurationManager

WPF中的ConfigurationManager
EN

Stack Overflow用户
提问于 2014-02-07 15:42:12
回答 3查看 31.5K关注 0票数 10

我在wpf项目中有一个配置文件来存储连接字符串。但是当我尝试获取AppSettings和ConnectionStrings时,我得到的结果是null。

WEB.config文件如下所示:

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <connectionStrings>
    <add name="Trackboard" connectionString="Data Source=(localdb)\v11.0;Initial Catalog=Trackboard;Integrated Security=True;AttachDbFileName=E:\Users\Sean\Workspace\DATABASE\Trackboard.mdf"/>
  </connectionStrings>
  <appSettings>
    <add key="Trackboard" value="Data Source=(localdb)\v11.0;Initial Catalog=Trackboard;Integrated Security=True;AttachDbFileName=E:\Users\Sean\Workspace\DATABASE\Trackboard.mdf"/>
  </appSettings>
</configuration>

我尝试了几种方法:

代码语言:javascript
复制
W1: ConnStr = ConfigurationManager.ConnectionStrings["Trackboard"].ConnectionString;
W2: ConnStr = ConfigurationManager.ConnectionStrings[0].ConnectionString;
W3: ConnStr = ConfigurationManager.AppSettings["Trackboard"];
W4: ConnStr = ConfigurationManager.AppSettings[0];

它们都不起作用。

但这一次成功了:

代码语言:javascript
复制
ConnStr = @"Data Source=(localdb)\v11.0;Initial Catalog=Trackboard;Integrated Security=True;AttachDbFileName=E:\Users\Sean\Workspace\DATABASE\Trackboard.mdf";

(这意味着我不能使用配置文件,这违背了我的意愿)我需要帮助。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-02-08 16:28:17

我已经弄明白了!我不应该创建一个新的配置文件。项目中有一个默认的app.config文件。现在一切都好了。

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <configSections>
    </configSections>
    <connectionStrings>
        <add name="Trackboard.Properties.Settings.TrackboardConnectionString"
            connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\DATABASE\Trackboard.mdf;Integrated Security=True"
            providerName="System.Data.SqlClient" />
    </connectionStrings>
</configuration>
代码语言:javascript
复制
private static string ConnStr = ConfigurationManager.ConnectionStrings["Trackboard.Properties.Settings.TrackboardConnectionString"].ConnectionString;
票数 2
EN

Stack Overflow用户

发布于 2014-02-07 17:54:09

只需添加app.config而不是web.config,因为它不是web应用程序。

之后就太简单了,只需添加一个对System.Configuration的引用,然后使用这个。

代码语言:javascript
复制
var ConnStr = ConfigurationManager.AppSettings["Trackboard"];
票数 13
EN

Stack Overflow用户

发布于 2014-02-07 15:56:40

本例使用System.Configuration名称空间

代码语言:javascript
复制
using System.Configuration;

或在引用中添加System.Configuration

代码语言:javascript
复制
System.ConfigurationManager.ConnectionStrings["Trackboard"].ConnectionString;
System.ConfigurationManager.ConnectionStrings[0].ConnectionString;
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21622009

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档