数据库管理库

时间:2013-03-20 07:27:57

标签: c# database plugins

在我们公司,我们与多个数据库系统(MySQL,MSSQL,PL / SQL,SQlite和SQLCe)合作开展各种项目。因此,我们开发了一个库,将所有内容放入一个很好的界面,我们可以连接到每个数据库,而不必担心现在背后的数据库。但是这个库总是需要在客户端计算机上安装每个数据库,因为.Net坚持认为(因为引用)。因此,我们使用MEF创建数据库插件,其中应用程序仅在启动时加载适当的插件,并且我们不需要在主机系统上安装任何其他数据库系统。

无论如何,由于每个数据库的不同,我们仍然在努力。假设我们希望程序能够在目标数据库中自动生成所需的表和数据(如果它们不可用)。或者,如果不同的数据库使用不同的数据类型。事情变得非常复杂,至于现在,我们也对使用LINQ2SQL感兴趣,LINQ2SQL似乎无法处理MySQL,SQlite和PL / SQL。

我的问题:

是否有任何免费/ oss C#库接管这项任务?在哪里我们可以完全控制我们的数据库,而不考虑现在背后的数据库?

3 个答案:

答案 0 :(得分:4)

任何成熟的ORM库都可以完成这项工作

检查this网站,查看常用ORM库的功能和性能比较

答案 1 :(得分:0)

Entity Framework可以满足您的所有需求。该框架具有许多数据库引擎的提供程序,它还具有迁移机制,可根据您的模型调整应用程序的数据库。

答案 2 :(得分:0)

NHibernate将是我的选择。如果您通过Castle ActiveRecord图层访问它,则更容易使用。