J'ai deux services WCF .NET 3.5 construits avec VS2008.Comment empêcher la génération de propriétés "Spécifiées" dans les clients WCF?
J'ai deux clients WCF dans Silverlight pour consommer ces services. Les clients sont générés avec le 'Ajouter une référence de service'. J'utilise Silverlight 4.
Un des proxies est généré avec Specified
pour chaque propriété. Ceci est une classe 'message-in' pour ma méthode de service:
// properties are generated for each of these fields
private long customerProfileIdField;
private bool customerProfileIdFieldSpecified;
private bool testEnvField;
private bool testEnvFieldSpecified;
Maintenant, mon autre service (toujours avec un client Silverlight) ne génère pas Specified
propriétés.
Maintenant je ne me soucie pas de 'principes de bonne SOA'. Je veux juste me débarrasser de ces foutues propriétés parce que dans le contexte de ce que je fais, je les déteste absolument.
Il doit y avoir une différence entre les deux services - mais je ne veux pas les déchirer complètement pour découvrir la différence.
Un similar question avant avait la réponse 'you cant do it' - ce qui n'est certainement pas vrai parce que je l'ai - je ne sais pas ce que j'ai fait différemment. Editer: Je suis maintenant dans une situation où je régénère mon proxy Silverlight 4 à mon service 3.5 WCF (tous sur la même machine localhost) que parfois j'obtiens des propriétés 'Spécifiées' et parfois je ne le fais pas. Je ne pense plus (comme je le soupçonnais à l'origine) que cela est uniquement dû à une configuration de noeud final ou à un niveau de service [attribut]. Il y a certains déclencheurs dans le message lui-même qui provoquent la génération (ou non) de Spécifié. Il peut y avoir de nombreux facteurs en jeu ou cela peut être quelque chose de très simple.
i ont en fait 3 services qui ne sont pas spécifiées créent des propriétés. Seul le quatrième fait! –
Ajoutez '[XMLSerializerFormat]' aux attributs de votre service: Cochez cette case [answer] (http://stackoverflow.com/questions/13396190/wcf-service-method-arguments-bool-specified) –