【问题标题】:How do I get a connection string from a deployed application?如何从已部署的应用程序中获取连接字符串?
【发布时间】:2017-03-07 18:42:30
【问题描述】:

我正在编写一个 Winforms 应用程序,我目前正在从应用程序获取连接字符串。配置文件中的代码是

    <connectionStrings>
    <add name="lockitup_Connect" connectionString="Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=C:\Development\C-Sharp\LockItUp\LockItUp.mdf;Integrated Security=True"
    providerName="System.Data.SqlClient" />
</connectionStrings>

我用来访问连接字符串的行是:

connStr = ConfigurationManager.ConnectionStrings["lockitup_Connect"].ToString();

但是因为我是 C# 新手,所以我认为这是硬编码到程序中的。我希望将该程序部署给其他用户,这显然会改变连接字符串。

我这样想对吗?如果是这样,我该如何更改它,以便每次都能建立准确的连接字符串?

【问题讨论】:

    标签: c# winforms connection-string


    【解决方案1】:

    部署时,您应该将适当的连接字符串写入app.config,这是您从中提取该值的位置。连接字符串的名称(lockitup_Connect 在您的示例中)是固定的,您可以按照您在此处编写的方式检索它。我要做的唯一改变是写

    ConfigurationManager.ConnectionStrings["lockitup_Connect"].ConnectionString;
    

    而不是

    ConfigurationManager.ConnectionStrings["lockitup_Connect"].ToString();
    

    至于您在部署时如何写入app.config,这取决于您使用什么来打包和部署应用程序以及如何在部署时确定连接字符串变量等因素。

    【讨论】:

      猜你喜欢
      • 2017-11-09
      • 2015-03-02
      • 1970-01-01
      • 2019-07-21
      • 2017-03-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-09-07
      相关资源
      最近更新 更多