繁体   English   中英

C#访问多个数据库的最佳方法

[英]c# Best way to access multiple databases

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

  • 将连接放在app.config中,也许可以使用实体框架访问每个数据库?
  • 将连接信息放入.txt文件中,然后使用SQL库打开连接,进行更新,关闭连接?

无论您选择使用Entity Framework还是ADO.NET都始终将连接字符串放在App.ConfigWeb.config文件中,以实现更好的可维护性。

这样,明天如果需要更改连接字符串; 您知道只有一次可以更改此设置。

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

这样的东西会被推荐吗?

<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>

我不知道是否有绝对最佳的方法来创建这种设置。 看来您对事物有把握。 我认为速度或(任何一种)性能都不是这里的问题。 我想说,任何对您而言更容易维护的都是“最佳”。 我之所以这么说,是因为这类事情通常从简单开始,随着时间的推移,变得越来越复杂。

祝好运!

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM