EF POCO DTO WCF Адаптер - PullRequest
       2

EF POCO DTO WCF Адаптер

2 голосов
/ 11 февраля 2011

Итак, я начинаю изучать использование EF с POCO и передачу DTO по проводам клиенту моего WCF.

Похоже, что это хороший архитектурный проект - использовать DTO вместо того, чтобы отправлять POCO клиенту.

Итак, я читал об этом и много раз упоминал об использовании шаблона адаптера для преобразования POCO в DTO.

Не могу найти ни одной статьи, описывающей паттер адаптера, используемый для POCO => DTO.

Может ли кто-нибудь пролить немного света на этот счет?

Ответы [ 2 ]

3 голосов
/ 11 февраля 2011

Адаптер является шаблоном GoW с точным значением. Вам не нужна специальная статья, чтобы прочитать о том, как использовать ее поверх POCO и DTO (это так же, как и с любыми другими классами). Но я думаю, что на самом деле вам не нужен настоящий адаптер. Вы хотите что-то, что преобразует POCO в DTO и наоборот. Многие разработчики используют очень хорошую библиотеку под названием AutoMapper . Я обычно не использую ни адаптер, ни AutoMapper. Вместо этого у моего DTO есть статические методы, называемые ToPoco и FromPoco - это глупо, это больше пишет, но все это понимают.

1 голос
/ 11 февраля 2011

Этот пост говорит о чистоте двух.

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

Итак, перед отправкой POCO по проводам у меня есть что-то вроде этого.

accountPoco.toDTO()

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

С другой стороны у меня есть

accountDto.toPOCO()

Что превращает его обратно в POCO.

Это не самый элегантный, но работает.

...