2010-11-29 7 views
0

J'ai un service Web WCF qui implémente un paramètre List<ICustomObject>. Dans le code client généré, le paramètre est List<Object>?!? Comment puis-je lui faire accepter le List<ICustomObject>, en tant qu'interface, ou dois-je utiliser un cours concret? J'ai la classe concrète marquée comme [KnowType] et [Serializable]Paramètre du service Web WCF

Répondre

1

Vous devez utiliser une classe concrète, car vous devez définir DataMember et DataContract pour qu'elle soit sérilisée, et avec l'interface, vous ne pouvez pas le faire.

+0

Merci les gars. vous avez tous les deux raison. – Nostradamnit

1

WCF fonctionne avec tout ce qui est exprimable dans le schéma XML - les interfaces ne le sont pas en soi.

Vous devez définir vos listes pour être des listes de types de béton - sinon le client ne sera pas en mesure de savoir quoi faire avec la liste et revenir à un List<Object>.