2010-05-23 3 views
0

В настоящее время у меня есть проект, который использует различные технологии доступа к базам данных в основном для демонстрации или демонстрации.Как структурировать проект Visual Studio для уровня доступа к данным

В настоящее время мы имеем:

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) 

ответ

0

Я почти делать противоположное, и группы по Технологии внедрения DAO.

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

И оттуда вы можете разбить DLL, если это необходимо. Таким образом, у вас может быть 2 dll, или 4, но вы считаете нужным.

Смежные вопросы