部署后连接字符串修改

时间:2008-10-25 16:24:07

标签: c# .net database deployment sql-server-express

我为应用程序创建了安装项目,我可以看到配置文件(Application.exe.config)的后续修改不会影响应用程序的执行。

我正在开发包含数据库文件的应用程序,我想让用户移动数据库文件并修改连接字符串。

有谁知道使用数据库文件部署应用程序的最佳做法是什么?

3 个答案:

答案 0 :(得分:2)

如果您在数据库访问DLL的Settings.settings文件和应用程序的配置文件中使用完全相同的连接字符串设置,它应该可以工作。

一个适合我的例子:

 <connectionStrings>
  <add name="YourApp.Properties.Settings.DatabaseConnectionString"
  connectionString="Data Source=localhost;Initial Catalog=xxx;Integrated Security=True;"
  providerName="System.Data.SqlClient" />
 </connectionStrings>

如果在两个位置都正确输入(即dll的Settings.settings和exe的App.config文件),这允许我在应用程序运行之前更改YourApp.exe.config中的数据库连接。

(我假设您已经知道需要更改应用程序的配置文件,因为DLL不直接支持app.config机制。)

答案 1 :(得分:1)

您是否使用UDL file结帐了? 如果将连接字符串保存在udl文件中,则用户只需双击该文件即可通过界面更改连接。 您可以在应用程序中设置连接字符串以指向udl文件。 如果需要,您还可以以编程方式启动udl接口。 这些唯一的缺点是,如果用户将密码保存到文件中,则会将其保存为纯文本。但是如果您使用Windows身份验证,这不是问题。

答案 2 :(得分:0)

您确定删除了设置默认值吗?这些是从dll编译和获取的,而不是从配置文件中获取。