Ищите шаблон, который поможет сопоставить DTO с сущностями EF4 на уровне бизнес-логики - PullRequest
0 голосов
/ 20 августа 2011

У меня есть сервисный уровень WCF, который использует чистые DTO.

На стороне сервера я беру эти DTO и передаю их на уровень своей бизнес-логики, в основном набор классов "Manager" для каждой сущности илигруппа объектов.

Методы класса Manager принимают DTO в качестве параметра, в первых строках каждого метода я беру DTO и, используя AutoMapper, сопоставляю его с моим Entity Framework POCO.Затем я делаю свои запросы LinQ или методы репозитория (я использую DBContext из EF 4.1) и, при необходимости, сопоставляю результирующий объект обратно в DTO и возвращаю его обратно в метод службы WCF.

Почти для каждого методав моем классе Менеджер делает это отображение и переназначение, это тонна повторяющегося шаблонного кода.Любые предложения по шаблону, которые я могу использовать для уменьшения избыточности?

Ответы [ 3 ]

0 голосов
/ 20 августа 2011

Мы помещаем все отображения в отдельную dll.Это облегчает тестирование и устраняет необходимость в дублирующемся коде.

Кроме того, вы можете уменьшить количество кода, используя automapper.

0 голосов
/ 01 сентября 2011

Если вы хотите использовать Entity Framework в архитектуре WCF.я думаю, что лучший выбор - это POCO Self-Tracking Entities, он предоставляется в виде шаблона элемента Visual Studio, который может быть создан из Designer.

0 голосов
/ 20 августа 2011

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

...