Salut j'ai une classe qui a une propriété de type d'une interfaceType d'interface comme propriété de classe lance erreur sur le client WCF
public class A
{
public List<IInterface> interface {get;set;}
}
Public class B : IInterface
{
// Some properties
}
Un service WCF appelle un OpertaionContract
qui renvoie un type d'objet de cet objet mais ça échoue sur mon client.
j'avais déjà ajouté l'attribut ServiceKnowType
sur toutes les classes mises en œuvre sur le contrat de service mais je reçois la même erreur « Pensez à utiliser un DataContractResolver
ou ajouter le type correspondant à « B » à la liste des types connus - pour par exemple, en utilisant l'attribut KnownTypeAttribute
ou en l'ajoutant à la liste des types connus passé à DataContractSerializer
Je suis vraiment confus comment cela fonctionnerait, s'il vous plaît conseille grâce.
j'ai ajouté le KnowTypeAttribute à droite DataContract si l'erreur ci-dessus est parti, mais maintenant je reçois une erreur générique de la connexion de soulignement s'est fermée.
Mise à jour: Ce lien m'a aidé à résoudre le problème de l'interface How can I pass a List<Interface> over WCF? Mais en ce moment énumérations me donnent un problème similaire mes pauses objet sur la cause du client des propriétés énumérations étant définies dans la classe.
Pouvez-vous envoyer votre code où et comment vous avez défini 'ServiceKnownTypeAttrubute'? – decyclone
[ServiceContract] [ServiceKnownType (typeof (B))] interface publique IIService {// certaines fonctions} – Nikshep