2

我正在开发一个使用 MVC 3 和 EF 4 的系统。在这个系统中,我需要查找一些已经存在于外部数据库中的信息。

将项目信息保存在的数据库中是可以的。我在上面定义了我的模型并让 DbContext 在我的服务器上创建表。

问题是当我尝试从外部数据库查询一些数据时。我已在以下位置的正确位置添加了连接字符串Web.config

<connectionStrings>
    <add name="ExtDBConnectionString" connectionString="Data Source=path.to.server;Initial Catalog=DBName;Persist Security Info=True;User ID=user;Password=pass;Pooling=True;Min Pool Size=5;Max Pool Size=60;Connect Timeout=2;" providerName="System.Data.SqlClient" />
</connectionStrings>

是否可以只在我的项目上创建一些对该服务器的查询,而不会从这个外部数据库重新创建所有模型的重载?我知道我可以使用命令在我的代码中恢复此连接字符串System.Configuration.ConfigurationManager.ConnectionStrings["ExtDBConnectionString"].ConnectionString,但是如何创建连接并实例化我的查询?

提前致谢!

编辑: @rouen 引起了我的注意,我没有明确表示数据库是不同的。它们共享相同的架构!外部数据库是报告的输出;所以,我需要在我的项目上遍历它,将相关行导入本地数据库。

4

2 回答 2

0

远程数据库在原理上与您的本地数据库相同吗?如果是,您可以将连接字符串传递给 ObjectContext/DbContext 的构造函数,它将使用该数据库。

http://msdn.microsoft.com/en-us/library/gg679467%28v=vs.103%29.aspx

于 2011-10-19T12:40:11.730 回答
0

我只会使用标准的 ADO.NET。使用 SqlConnection 和 SqlCommand 类。

MSDN 上的 ADO.NET 示例:http: //msdn.microsoft.com/en-us/library/dw70f090.aspx

于 2011-10-19T12:42:22.010 回答