Envoi d'un objet Tuple sur WCF?
Est le System.Tuple
classe prise en charge par la WCF du Contrat de Données Sérialiseur (c'est à dire, puis-je passer Tuple
objets à WCF appels et/ou de les recevoir comme tout ou partie du résultat)?
J'ai trouvé cette pagemais pas le clair, définitif ", vous pouvez envoyer et recevoir des Tuples avec WCF" réponse que j'espérais.
Je suppose que vous le pouvez, aussi longtemps que tous les types de dans la Tuple
lui-même sont pris en charge par le Contrat de Données Sérialiseur -- quelqu'un peut-il me fournir plus de réponse définitive? Merci.
source d'informationauteur Donut
Vous devez vous connecter pour publier un commentaire.
La
Tuple
types sont marqués avecSerializableAttribute
par conséquent, si les types de stocker à l'intérieur sont sérialisables, ils devraient être en mesure d'être sérialisé par la WCF.Découvrez: les liens de Tuple'1Tuple'2etc. Il dit:
Noter que le document lié contient la ligne suivante:
Donc, il peut ne pas être aussi facile que ça en a l'air.
(BTW, le Tuple statique de la classe est aussi la peine de vérifier.)
Je viens de creuser en moi-même, et il semble qu'un problème peut-être si vous êtes consomment le service WCF par Silverlight: voir Davy Brion blog pour plus d'.
La version Silverlight de Tuple n'a pas l'attribut Serializable, ce qui pose un problème à l'heure actuelle.
J'ai Tuples fonctionne parfaitement avec .NET 4.0 et WCF (rappel: vous avez besoin .NET 4.0 pour Tuple de soutien).
Ici est l'unité de la méthode d'essai (qui appelle la méthode par le biais de la WCF couche):
Voici l'interface:
Ici est la mise en œuvre:
Je l'ai juste testé par le débogage à l'aide d'un "Service WCF Application" (voir le Nouveau Projet..) qui dessert le service WCF. J'utilise cette méthode pour le débogage, que je peux utiliser le débogueur à l'étape de façon transparente à partir de la WCF client dans le service WCF , et de retour à nouveau, ce qui est très utile à la fois.
J'ai aussi testé cette méthode par le déploiement d'une application console, et une application de service, de sorte que son certainement de travailler pour moi.