Интерфейс возврата контракта WCF мог вызвать проблему сериализации?

Как разделы delete, так и вставки этого оператора update выполняются для каждой строки результата из секции where. Поскольку вставка не зависит от каких-либо переменных из раздела where, это, вероятно, не то, что вам нужно. Вместо этого вы должны попытаться выполнить вставку как простой оператор вставки данных.

7
задан WillH 6 January 2009 в 13:13
поделиться

2 ответа

AFAIK, проблема не с сериализацией, а с тем, что Вы возвращаете абстрактный объект (интерфейс). Абстракция является понятием OO, не понятием SOA. Так, стопка wcf Вашего клиента не может знать, что сделать с классом позади интерфейса. Что, если клиент не знает класс позади интерфейса. Стек WCF клиента должен десериализовать его, и сделать это, это должно знать класс.

Так, необходимо сделать класс (классы) позади интерфейсной части контракта через KnownTypeAttribute.

Можно также использовать класс ServiceKnownTypeAttribute, который, кажется, более гибок. Однако, помните, что клиент должен знать тип, или Вы получите исключение.

14
ответ дан 6 December 2019 в 15:36
поделиться

В этом посте я подробно расскажу, как заставить WCF работать для получения и возврата производных классов и интерфейсов.

http://codeonaboat.wordpress.com/2010/03/01/serializing-and-deserializing-dehibited-types-or-interfaces-in-wcf/

0
ответ дан 6 December 2019 в 15:36
поделиться
Другие вопросы по тегам:

Похожие вопросы: