我需要在相同设计的不同数据库实例之间进行交换。有没有办法将 DBML 重新指向这个不同的数据库。理想的做法是在代码中指定不同的 web.config 连接字符串。但是,不想更改代码库中的 Datacontext 名称。如果在 ADO.NET 中执行此操作,则可以选择连接字符串。
谢谢,
埃德
我需要在相同设计的不同数据库实例之间进行交换。有没有办法将 DBML 重新指向这个不同的数据库。理想的做法是在代码中指定不同的 web.config 连接字符串。但是,不想更改代码库中的 Datacontext 名称。如果在 ADO.NET 中执行此操作,则可以选择连接字符串。
谢谢,
埃德
您可以使用 web.config 转换并轻松交换所需的配置,这里有一些链接:
当您实例化 DBML 时,将从配置文件中检索适当的连接字符串。(app.config
或web.config
)。在没有找到设置的情况下,使用初始连接字符串(作为属性存在于 DBML 中,并且可以通过设计器查看)。
如果您通过单个实例使用多个连接字符串,则只需要使用连接字符串构造函数,并且需要指定您应该连接的数据库。
在您的情况下,您只需在执行设置文件中包含适当的连接字符串。连接字符串必须正确命名 - 请参阅放置在包含 DBML 的项目中的设置以检查名称。
你应该能够做到这一点。当您生成 DBML 时,它通常会将连接字符串写入配置文件(web.config 或 app.config)。我们应该只更改配置文件中的数据库位置。但是,您必须确保所有数据库都处于同步状态。