我需要使用与设置设计器中默认设置值不同的连接字符串,才能在我的登台PC上运行。
我在settings.designer.cs:
[global::System.Configuration.DefaultSettingValueAttribute("Data Source=MyServer\\MyDB;Initial Catalog=MyDB;Integrated Security=True;Pers" +
"ist Security Info=True")]
public string MyConnectionString {
get {
return ((string)(this["MyConnectionString"]));
}
}
我的app.config是这样的:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<connectionStrings>
<clear />
<add name="MyConnectionString " connectionString=Data Source=MyServer2\\MyDB;Initial Catalog=MyDB;;Trusted_Connection=True"
providerName="System.Data.SqlClient" />
</connectionStrings>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />
</startup>
</configuration>
我希望应用程序使用app.config中的设置,但它仍然使用设置设计器文件中的设置。
我也尝试了以下各种排列:
<add name="AppName.Properties.Settings.Default.MyConnectionString" connectionString=Data Source=MyServer2\\MyDB;Initial Catalog=MyDB;;Trusted_Connection=True"
providerName="System.Data.SqlClient" />
如:
AppName.Properties.Settings.GlobalReference.Default.MyConnectionString
和
ApplicationSettings.AppName.Properties.Settings.GlobalReference.Default.MyConnectionString
非常感谢任何想法或想法。
答案 0 :(得分:1)
为了使其正常工作,您必须在引用中使用System.Configuration。
答案 1 :(得分:1)
您需要访问配置管理器
System.Configuration.ConfigurationManager.ConnectionStrings["connectionStringName"].ConnectionString;
将您的连接字符串名称更改为更简单的名称,或者您必须使用所有
System.Configuration.ConfigurationManager.ConnectionStrings["AppName.Properties.Settings.Default.MyConnectionString"].ConnectionString;
如果要使用系统属性,则应添加system.reflection引用