ASP.Net многоуровневая связь
Мы разрабатываем многоуровневое веб-приложение. Спецификации:
- 3 уровня, уровень данных, бизнес-уровень, пользовательский интерфейс.
- Программируется в C#
- Уровень данных использует структуру объекта
В настоящее время мы планируем вернуть слой данных IEnumerable<T>
на бизнес-уровень через сущности linq 2, а бизнес-уровень вернет данные на уровень пользовательского интерфейса.
Поскольку уровень пользовательского интерфейса не знает о существовании уровня данных, как он будет обрабатывать результат IEnumerable, передаваемый ему из BLL, где T определяется на уровне данных?
Есть ли хороший пример того, как это сделать. Обратите внимание, что я чрезвычайно новичок в фабриках / интерфейсах / абстракциях, чтобы свободно соединять слои.
Я видел здесь вопрос о передаче данных в более старое приложение, и было рекомендовано, чтобы уровень сущностей был общим для всех слоев... однако я не хочу, чтобы другие уровни могли запрашивать базу данных.
1 ответ
Определите объекты данных в отдельном проекте или, по крайней мере, в отдельном пространстве имен, чтобы слой Display мог иметь ссылку на объекты, но не DAL, который имеет доступ к базе данных.