如何为数据访问层构建Visual Studio项目

时间:2010-05-23 15:46:58

标签: visual-studio projects-and-solutions

我目前有一个项目,它使用各种数据库访问技术,主要用于展示或演示。

目前我们有:

Namespace App.Data (App.Data.dll)
    Folder NHibernate
    Folder EntityFramework
    Folder LinqToSql

上面的结构没问题,因为我们只使用Sql Server作为数据库。但是今后我们将包括Oracle,MySql等。

那么考虑到这一点会有什么更好的结构呢?

我想到了:

Namespace App.Data.SqlServer (App.Data.SqlServer.dll)
    Folder NHibernate
    Folder EntityFramework
    Folder LinqToSql

或者为每个数据库和访问技术设置单独的程序集会更好吗?:

Namespace App.Data.SqlServer.NHibernate (App.Data.SqlServer.NHibernate.dll)
Namespace App.Data.SqlServer.EntityFramework(App.Data.SqlServer.EntityFramework.dll)
Namespace App.Data.Oracle.NHibernate (App.Data.Oracle.NHibernate.dll)
Namespace App.Data.MySql.NHibernate (App.Data.MySql.Oracle.dll)

1 个答案:

答案 0 :(得分:0)

我几乎会做相反的事情,并通过DAO实施技术进行分组。

    - Namespace App.Data
       -NHibernate
         - SQLServer
         - Oracle
       -EntityFramework
         - SQLServer
         - Oracle

从那里你可以拆分DLL,如果它是必要的。所以你可以拥有2个dll,或者4个你认为合适的dll。