@PashaPash Когда читаешь Фаулера, Мартина, Эванса всё выглядит гладко. Просто потом приходишь в реальный проект, а там вместо ISpecification будет
Expression<Func<T, bool>
, уже готовые но переделанные Unit of Work (и ты должен ещё понять зачем оно переделано, как, для чего и какие ограничения), уже готовые
[MaxLength(50)]
которые
не гарантируют что не придёт EF и так далее. Гладко только на бумаге. (