Cette opération n'est pas prise en charge dans le Client Test WCF

J'ai créé un service WCF et pour le service par défaut, j'ai ajouté un autre contrat d'opération sur les principaux DataContract:

[OperationContract]
void DoSomething(UserData data);

Puis-je avoir quelque chose comme ceci (simplifié pour les fins de l'exemple) ci-dessous. Le problème est que, même si TOUTES les classes de la hiérarchie sont décorées avec DataContract et TOUS leurs membres décorées avec DataMember, lorsque j'utilise le Client Test WCF il a une icône rouge indiquant que "l'opération n'est pas prise en charge dans le client test WCF".

[DataContract]
public class UserData {
   [DataMember]
   public uint One { get; set; }

   [DataMember]
   public CompositeType Extra { get; set; }

   public UserData() { ctor. code }
}


[DataContract]
public class CompositeType {
    [DataMember]
    public uint Two { get; set; }

    public UserData() { ctor code }
}
Je vois deux classes portant le même nom, mais on est absent type composite, qu'entendez-vous par là? Vous avez aussi oublié de poster la classe de type composite.
Je vois que vous parlez de la hiérarchie. Êtes-vous à la mise en œuvre de tout type de relation récursive? Depuis que nécessiterait la classe utilisée de manière récursive pour être décorés avec de la [DataContract(IsReference=True)]
désolé faute de frappe erreur, le 2ème (déjà corrigé) a été CompositeType et pas UserData. J'ai aussi ajouté le paramètre ' isreference les sous-types utilisés dans les principaux DataContract mais cela ne résout pas le problème.

OriginalL'auteur Lord of Scripts | 2012-03-23