Вопрос о дизайне DAL / BL

Я работаю над приложением Windows .net 2.0. Уровень доступа к данным [DAL] выполняет хранимые процедуры и возвращает средство чтения / набор данных на бизнес-уровень [BL].

BL, который ссылается на DAL dll, выполняет итерацию по загрузчику данных / набору данных, считывает значения столбцов, создает бизнес-объекты и возвращает их на уровень пользовательского интерфейса.

Учитывая это, нормально ли здесь, что бизнес-уровень ссылается на столбцы таблицы базы данных?

Это хорошая практика для дизайна слоев?

Если я верну бизнес-объект из DAL вместо набора данных / datareader, тогда мой проект DAL также должен будет ссылаться на BL dll. Итак, не будет ли здесь циклической ссылки? Спасибо.


person user74042    schedule 19.12.2010    source источник
comment
возможный дубликат набора данных или объекта возврата библиотеки доступа к данным   -  person jgauffin    schedule 20.12.2010


Ответы (1)


Это не хорошей практики, так как ваш уровень данных раскрывает детали реализации и, таким образом, скрытие и инкапсуляция информации теряются.

Вы должны передавать объекты, моделирующие ваши данные.

Например, вместо строки данных order вы должны передать объект Order.

person Oded    schedule 19.12.2010