Entity Framework 4.0 - Могу ли я отправить сложный тип клиенту через WCF? - PullRequest
1 голос
/ 04 июля 2010

Эй, кто-нибудь может подтвердить, что сработает следующий сценарий:

  • Я занимаюсь разработкой трехуровневого приложения в .NET 4.0: клиент Winforms, aspx-сервер и база данных SQL 2008.
  • Сервер связывается с базой данных SQL 2008 посредством Entity Framework 4.0 и возвращает сущности в виде STE (в отдельной сборке) клиентскому приложению через WCF.

Теперь я хочу выполнить хранимую процедуру на сервере SQL, которая вернет мне пользовательский формат данных (а не отображение 1: 1 с сущностью). Я прочитал, что могу использовать сложные типы для хранения данных, которые мне вернут.

Теперь вопрос: будет ли этот сложный тип сериализуемым через WCF, чтобы клиент тоже мог с ним работать? Я полагаю, что это так, но, похоже, нигде не могу найти заключительного ответа, и я хочу быть уверенным, прежде чем приступить к кодированию.

Спасибо!

TJ

Ответы [ 2 ]

1 голос
/ 05 июля 2010

Все, что может быть представлено в XML-схеме, может быть сериализовано и, таким образом, отправлено по сети с использованием WCF.

Сюда входят все базовые примитивные типы .NET, такие как int, double, string, DateTime и любые классы, построенные из них.

Вещи, которые не будут работать, например:

  • любая спецификация .NET (например, Exception, generics, ...) - помните, что WCF предназначен для взаимодействия, а не только для двух клиентов .NET

  • что-нибудь с присущим поведением (например, словарь)

0 голосов
/ 07 июля 2010

Если вы возвращаете сложные типы в службу wcf или если вы возвращаете сущность, одно из свойств которой имеет сложный тип, у сущности самопроверки не возникнет проблем. Однако если вы используете службы RIA, сложные типы не поддерживаются.

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