C# 在不重新编译的情况下更改连接字符串
我正在开发一个WinForm应用程序。我已经将数据访问逻辑实现到一个“库项目”中,我在WinForm项目中将其设置为引用。我正在使用LINQtoSQL连接到我的项目数据库,将我使用的表映射到一个C# 在不重新编译的情况下更改连接字符串,c#,.net,linq-to-sql,database-connection,C#,.net,Linq To Sql,Database Connection,我正在开发一个WinForm应用程序。我已经将数据访问逻辑实现到一个“库项目”中,我在WinForm项目中将其设置为引用。我正在使用LINQtoSQL连接到我的项目数据库,将我使用的表映射到一个dbml文件中。现在我必须发布我的项目,并将连接字符串更改为指向生产数据库 是否可以在不重新编译项目的情况下更改连接字符串? 这将是非常有用的调试时间和维护 我试图在app.config和Settings文件中更改它,但它似乎仍然指向开发数据库 我哪里做错了 本文中建议的解决方案非常好: 但我决定用另一种
dbml
文件中。现在我必须发布我的项目,并将连接字符串更改为指向生产数据库
是否可以在不重新编译项目的情况下更改连接字符串?
这将是非常有用的调试时间和维护
我试图在app.config
和Settings
文件中更改它,但它似乎仍然指向开发数据库
我哪里做错了 本文中建议的解决方案非常好: 但我决定用另一种方式解决我的问题 在不修改
dbml
文件中的任何内容的情况下,我在DAO类中添加了一个构造函数,该构造函数接受一个参数:
public MyDataAccessClass(string connectionString)
{
_connString = connectionString;
}
然后,我没有使用DataClasses()
构造函数来实例化LINQ-to-SQL类,而是将其替换为DataClasses(\u connString)
现在我可以在需要的地方使用数据访问库。连接字符串将在引用应用程序(或其他任何地方)的
app.config
中设置。您能创建一个最小的测试用例吗?一个尽可能小的应用程序仍然存在问题?连接字符串的定义在哪里?@KirillPolishchuk我已经创建了一个用于访问数据的dll项目。当我将使用的表放入dbml文件时,连接字符串保存在settings
文件中,也保存在我的“数据访问项目”的app.config
文件中。我想在项目中指定用作此dll引用的连接字符串。。。有可能吗?这应该对你有帮助@Aravind很棒!是的,这很有帮助!!!非常感谢你!您链接的页面不再可用。你能在你的回答中总结一下吗?