2010-05-21 3 views
2

Я создаю приложение, используя структуру сущности. Я использую шаблон T4 для создания объектов самоконтроля.Каков наилучший подход для разработки приложений n-уровня с сущностью?

В настоящее время я собираюсь создать код инфраструктуры сущности в отдельном проекте. В этом же проекте у меня были бы частичные классы с дополнительными методами для сущностей.

Я собираюсь создать отдельный проект для уровня сервиса (WCF) с помощью методов для верхнего/уровня представления. Уровень WCF будет ссылаться на проект инфраструктуры сущности. Методы на уровне WCF возвращают сущности или принимают сущности в качестве параметров.

Я думаю, что для создания третьего проекта для уровня представления (ASP.net) это вызовет вызов службы WCF, но также необходимо будет ссылаться на объекты, поскольку методы WCF принимают эти типы в качестве параметров/return типы.

Короче говоря, я хочу использовать объекты STE, сгенерированные шаблоном T4, в качестве DTO, который будет использоваться во всех слоях.

Я изначально думал о создании уровня бизнес-логики, который сопоставляется каждому объекту. Пример. Если у меня есть класс клиента, бизнес-уровень будет иметь класс CustomerBLL, а затем методы в customerBLL будут использоваться уровнем обслуживания. Я также пытался создать DTO в этом бизнес-слое. Однако я обнаружил, что этот подход очень трудоемкий, и я не вижу большого преимущества, так как это создаст больше работ по техническому обслуживанию.

Какова наилучшая практика разработки приложений n-уровня с использованием структуры сущностей 4?

ответ

0

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

Я думаю, разбивка проектов, как ниже будет хороший подход (по крайней мере, он работал хорошо для меня :))

  • Сущности в одном проекте
  • Постоянство логика в другом проекте (Хранилища , Единица работы реализации)
  • WCF в одном проекте
  • Presentation слой

Надеюсь, что это поможет.

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