簡體   English   中英

如何覆蓋連接字符串的設置設計器中的默認設置值

[英]How do I overwrite the default settings value in the settings designer for my Connection String

為了在我的登台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

任何想法或想法將不勝感激。

為了使其正常工作,您必須在引用中包含System.Configuration。

您需要訪問配置管理器

 System.Configuration.ConfigurationManager.ConnectionStrings["connectionStringName"].ConnectionString;

將您的連接字符串名稱更改為更簡單的名稱,否則您將不得不使用所有這些

 System.Configuration.ConfigurationManager.ConnectionStrings["AppName.Properties.Settings.Default.MyConnectionString"].ConnectionString;

如果要使用系統屬性,則應添加system.reflection參考

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM