Каков наилучший способ доставки моделей EF через WCF? - PullRequest
2 голосов
/ 18 марта 2010

У меня новый проект, и я смотрю на использование Entity Framework (v4) поверх службы WCF.

Мне было интересно, что люди думают о том, как лучше всего передавать данные из EF через WCF? Должен ли я использовать сгенерированные EF классы или превратить их во что-то еще?

На данный момент приложение будет работать в Интернете, но, возможно, в будущем появятся другие (Silverlight, Windows, мобильные и т. Д.).

Ответы [ 2 ]

3 голосов
/ 18 марта 2010

В EF 3.5 мой совет - никогда не возвращать EF-сущность. Вместо этого верните DTO со свойствами, соответствующими свойствам сущности EF.

В EF 4.0 они проделали большую работу над классами POCO и другими вещами. Я не в курсе того, что они сделали. Если вы можете заставить EF генерировать классы сущностей, которые не предоставляют клиенту зависимости от реализации, вы можете их вернуть. Классы .NET 3.5, производные от классов, специфичных для EF, и свойства базового класса просочились в прокси-серверы клиента. Тебе нужно, чтобы этого не случилось.

2 голосов
/ 18 марта 2010

Для Silverlight я бы порекомендовал WCF RIA Services. Для Интернета вы можете использовать ADO.NET Data Services.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...