2009-02-06 9 views
1

J'ai un contrat de données en tant qu'objet de base et j'ai deux objets de contrat de données dérivés.WCF DataContract

Dans le contrat Opération, je renvoie uniquement l'objet de base. Ainsi, puisque l'objet de base est représenté en service et contrat contractuel, la classe dérivée n'est pas visible du côté client (ou) n'est pas publiée dans le service web.?

comment puis-je créer l'objet dérivé du côté client et renvoyer via un contrat opérationnel via sa référence d'objet de base.

(ou)

Comment puis-je exposer l'objet DataContract en service mais pas dans le contrat d'exploitation à webservice que je peux consommer de la référence Web.

thks Dinesh

Répondre

-1

Je ne suis pas sûr que vous le pouvez. Le problème, à mon avis, c'est que vous déplacez la classe de base de l'autre côté du fil, puisque c'est ce qui est défini dans le contrat d'exploitation. Cela signifie que les extensions que vous créez avec des classes dérivées ne seront pas déplacées sur le réseau, car seule la classe de base sera sérialisée.

edit: Après avoir lu le post de davogones, il a définitivement un point. Je suppose que cela dépend vraiment de la présence de champs supplémentaires. C'était ma pensée ci-dessus de toute façon.