更改连接字符串而无需重新编译
作者:互联网
我正在开发WinForm应用程序.我已经将数据访问逻辑实现到了一个“库项目”中,并将其设置为WinForm项目中的参考.我正在使用LINQ to SQL连接到我的项目数据库,将我使用的表映射到dbml文件中.现在,我必须发布项目并更改连接字符串以指向生产数据库.
是否可以更改连接字符串而无需重新编译项目?
这在调试时和维护时将非常有用.
我尝试在app.config和“设置”文件中进行更改,但它似乎仍指向开发数据库.
我在哪里做错了?
解决方法:
本文建议的解决方案非常好:http://goneale.com/2009/03/26/untie-linq-to-sql-connection-string-from-application-settings/
但是我决定以另一种方式解决我的问题.
在不修改dbml文件的任何内容的情况下,我在DAO类中添加了一个带参数的构造函数:
public MyDataAccessClass(string connectionString)
{
_connString = connectionString;
}
然后,我没有使用DataClasses()构造函数实例化LINQ-TO-SQL类,而是将其替换为DataClasses(_connString).
现在,我可以在需要的地方使用数据访问库.连接字符串将在Referencig应用程序的app.config中设置(或其他位置).
标签:linq-to-sql,database-connection,c,net 来源: https://codeday.me/bug/20191201/2082819.html