ASP.Net многоуровневая связь

Мы разрабатываем многоуровневое веб-приложение. Спецификации:

  • 3 уровня, уровень данных, бизнес-уровень, пользовательский интерфейс.
  • Программируется в C#
  • Уровень данных использует структуру объекта

В настоящее время мы планируем вернуть слой данных IEnumerable<T> на бизнес-уровень через сущности linq 2, а бизнес-уровень вернет данные на уровень пользовательского интерфейса.

Поскольку уровень пользовательского интерфейса не знает о существовании уровня данных, как он будет обрабатывать результат IEnumerable, передаваемый ему из BLL, где T определяется на уровне данных?

Есть ли хороший пример того, как это сделать. Обратите внимание, что я чрезвычайно новичок в фабриках / интерфейсах / абстракциях, чтобы свободно соединять слои.

Я видел здесь вопрос о передаче данных в более старое приложение, и было рекомендовано, чтобы уровень сущностей был общим для всех слоев... однако я не хочу, чтобы другие уровни могли запрашивать базу данных.

1 ответ

Решение

Определите объекты данных в отдельном проекте или, по крайней мере, в отдельном пространстве имен, чтобы слой Display мог иметь ссылку на объекты, но не DAL, который имеет доступ к базе данных.

Другие вопросы по тегам