用linq to sql,存储数据库连接信息在哪里?

时间:2009-06-02 13:09:29

标签: linq-to-sql

使用linq to sql,存储数据库连接信息在哪里?

如何基于每个查询将数据库覆盖到另一个数据库?

4 个答案:

答案 0 :(得分:3)

您无法按查询执行此操作;但你可以按数据上下文。只需将不同的连接或连接字符串传递给构造函数:

string connectionStringA = ..., connectionStringB = ...
using(var ctxA = new FooContext(connectionStringA)) {...}
...
using(var ctxB = new FooContext(connectionStringB)) {...}

using(SqlConnection conn = ...)
using(var ctxC = new FooContext(conn)) {...}

答案 1 :(得分:0)

数据库connection for linq位于web.config或application.config文件中。

答案 2 :(得分:0)

您将其传递给DataContext实例。

使用生成的DataContext子类,默认构造函数将使用项目.Settings,因此将使用.config文件。

答案 3 :(得分:0)

正如aleemb所说,数据库信息存储在配置文件中。检查项目中创建dbml映射的那个。

那就是说 - DatabaseContext有一个构造函数,它将连接字符串作为参数。但是,我不确定在不创建新的DatabaseContext对象的情况下,在每个查询的基础上覆盖它的好方法。如果您要从两个不同的DatabaseContext对象创建实体,那么将来可能会导致您遇到问题。