c#访问多个数据库的最佳方式

时间:2016-06-13 14:39:08

标签: c# sql database entity-framework database-connection

我正在创建一个c#可执行文件作为计划任务运行。 .exe将访问多个数据库并在每个数据库上更新相同的表和列。数据库按位置拆分。访问多个数据库的最佳方法是什么?我应该:

  • 将连接放在app.config中,并可能使用Entity Framework访问每个数据库?
  • 将连接信息放在.txt文件中,然后使用SQL库打开连接,进行更新,关闭连接?

4 个答案:

答案 0 :(得分:0)

无论您选择使用09912345还是Entity Framework,都要将连接字符串放在ADO.NETApp.Config文件中,以便更好地维护。

这样,明天如果需要更改连接字符串;你知道只有一个地方可以改变它。

同样,更改配置文件Web.config文件不需要重建代码并将其重新部署到生产环境。

答案 1 :(得分:0)

建议这样的东西?

<connectionStrings>
<add name="Db1" connectionString="Data Source=SQL.*****;Initial Catalog=Db1;Persist Security Info=True;User ID=****;Password=****;MultipleActiveResultSets=True" providerName="System.Data.SqlClient" />
<add name="Db2" connectionString="Data Source=SQL.*****;Initial Catalog=Db2;Persist Security Info=True;User ID=****;Password=****;MultipleActiveResultSets=True" providerName="System.Data.SqlClient" />
<add name="Db3" connectionString="Data Source=SQL.*****;Initial Catalog=Db3;Persist Security Info=True;User ID=****;Password=****;MultipleActiveResultSets=True" providerName="System.Data.SqlClient" />

 </connectionStrings>

答案 2 :(得分:0)

我不知道是否有绝对最好的方法来创建这种设置。看起来你有办法处理事情。我不认为速度或(任何类型)表现是一个问题。我要说的是,无论你更容易维护什么,都会是最好的&#39;。我这样说只是因为这些事情通常很简单,随着时间的推移,变得越来越复杂。

祝你好运!

答案 3 :(得分:0)

我最终做的是将常量sql字符串连接变量放在appSettings下的app.config中。然后我创建了一个csv文件,我放了目录(数据库)。这允许我在需要创建新数据库时将数据库添加到csv文件。然后我将文件读入一个数组并循环遍历它,只需要在从一个数据库转到另一个数据库时更改连接字符串中的目录名称。