Где разместить валидацию POCO - архитектура N-слоев - PullRequest
0 голосов
/ 30 мая 2018

Я занимаюсь разработкой n-слойного приложения.Одним из слоев является BusinessLayer , который использует набор POCO, определенных в CoreLayer

CoreLayer

  • POCO (классы со свойствами)
  • Интерфейсы репозитория (используйте POCO в качестве типов параметров) Например:

    public interfaces ICarRepository
    {
     IEnumerable<CarPOCO> GetAllCars();
    }
    
    public class CarPOCO
    {
      public int Id{get;set;}
      public string Name{get;set;}
    }
    

DataAccessLayer

  • Пользовательская реализация IRepositories.Например, с доступом к данным SQLServer.

BusinessLayer :

  • логика Businnes
  • Я хочу поставить здесь проверкуPOCOs данные, но я не уверен, что это правильное место, или как с этим бороться

Что вы думаете?Как ты это сделаешь?

Большое спасибо, ты потрясающий.

1 Ответ

0 голосов
/ 30 мая 2018

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

Более подробная информация по адресу: https://github.com/JeremySkinner/FluentValidation

...