Après avoir passé quelques semaines sur ce problème, je assez bien une réponse définitive:
Pouvez-vous remplacer XML/SOAP avec un sérialisation binaire personnalisé pour WCF?
La réponse courte: non
La longue réponse: oui, mais vous devez réécrire presque toutes les interfaces de la couche de transport de sorte que vous pourriez tout aussi bien créer un IHttpHandler de mesure et d'éviter WCF tous ensemble.
Microsoft, en essayant de suivre la norme SOAP (et la norme est responsable de ce problème à mon avis) rompt l'une des règles de programmation simples -> séparation des responsabilités dans les couches. WCF/SOAP peut sembler être un protocole et un transport élégamment stratifié, mais la réalité est qu'il existe des connexions complexes entre les couches. Cela signifie que WCF est un protocole de communication extrêmement complexe qui fournit des fonctionnalités de transport, de sécurité, de fiabilité, de publication, de sérialisation et autres qui sont toutes interdépendantes à un certain niveau. Si tout ce que vous voulez est un canal de transport, WCF/SOAP ajoute énormément de complexité.
Je suis sûr que je pourrais lancer d'énormes diatribes à propos de SOAP oui/non, mais j'ai finalement réalisé que WCF/SOAP n'est pas ce dont j'avais besoin pour mon application.
-Jeff
Vous avez totalement tort. Où trouvez-vous cette merde? Que diriez-vous de netTcpBinding ou des autres liaisons qui utilisent binaire? Je ne sais pas quelles recherches vous avez faites, mais vous avez fait un sacré boulot. –
Ok, excuses ... Je me rends compte que mon autre poste mentionné silverlight, celui-ci n'a pas. Vous avez raison John, il y a des bindings binaires WCF SI vous n'êtes pas dans Silverlight, mon mauvais. -Jeff – Jeff