1

我正在使用 LINQ to SQL 开发一个 winforms 应用程序 - 并且正在我的工作站上使用 SQL Express 实例构建应用程序。项目的最终安装将在适当的 SQL Server 2005 上。

数据库具有相同的名称,所有表都相同,但主机名不同。

我发现让我的应用程序从一台机器运行到另一台机器的唯一方法是在 Visual Studio 中重新打开代码,从我的 .mdbl 中删除所有引用 SQL express 实例的对象,保存项目,连接到另一台服务器,将所有引用拖回,并重新构建应用程序以再次发布。

这里的一个答案建议人们可以简单地修改 app.config/web.config 文件 - 这适用于 asp.net,但这是一个 winforms 应用程序。使 LINQ to SQL 应用程序使用新数据库而无需在 Visual Studio 中重新打开应用程序的正确方法是什么?

4

4 回答 4

1

如果我正确理解您的问题,您只需在 app.config/web.config 中更改数据库的连接字符串。

编辑,后澄清:您将连接字符串存储在某处。它们可能在您服务器的 app.config 中。尽管如此,你还是从某个地方得到它们,而那个地方可能在 app.config 中。然后使用它:)

于 2008-09-08T07:26:04.667 回答
1

一个好的解决方案是向 dbml 文件本身添加另一个连接。您可以通过右键单击设计图面的字段并选择属性来实现此目的。从那里,您可以添加另一个连接字符串。无需删除所有内容并重新拖动,只需更改字符串并重新编译即可。

但是如果你想获得花哨的功能,你可以让程序自动检测它是否在本地运行,使用这个简洁的实用功能:检测本地

并从那里根据结果设置适当的连接字符串。

于 2008-09-20T15:52:11.890 回答
1

一个更有用的答案...

app.config 在构建后以 appname.exe.config 结尾。

无需打开 Visual Studio 并修改 app.config,您只需编辑 appname.exe.config 文件,然后重新启动应用程序即可。

于 2008-10-02T08:50:44.523 回答
0

我相信您可以将连接信息存储在 app.config 文件中并从那里检索它。 是一篇关于使用 LINQ to SQL 执行此操作的帖子。将其部署到生产服务器后,您只需编辑 XML 即可更改数据源。

于 2008-09-08T09:28:12.813 回答