Je cherche un cadre approprié pour implémenter le niveau de service (web) dans .NET. Je suis un peu familier avec WCF et je me demande, si elle peut être personnalisée comme je le veux.Utiliser WCF pour implémenter des services selon les normes de l'industrie?
1) Il existe une norme de l'industrie pour les messages à envoyer/recevoir par le système, qui définit les opérations, les types utilisés, etc. Il est basé sur XML. Il exige que toutes les demandes/réponses à envelopper dans une enveloppe, .: par exemple
<xxx:Message>
<xxx:Header>
//some header data
</xxx:Header>
<xxx:Body>
<xxx:Command>
//request data
</xxx:Command>
<xxx:Command>
//request data
</xxx:Command>
<xxx:Body>
</xxx:Message>
L'élément xxx:Command
identifie en fait l'opération à effectuer et les paramètres, ou contient le résultat de l'exécution de la commande.
Le WCF encapsule tout dans l'enveloppe SOAP. Peut-il être personnalisé pour envoyer toutes les demandes utilisant l'enveloppe dans l'exemple ci-dessus, au lieu de SOAP? Comment dois-je coder mes services, de sorte que tous les messages sortants et entrants sont correctement analysés. Dois-je regarder aux attributs [MessageContract]
ou [DataContract]
ou les deux?
2) Opérations unidirectionnelles. La norme de l'industrie stipule que les services doivent répondre avec le message "accusé de réception", que la demande a été reçue. Je regardais les opérations à sens unique, qui mettent en œuvre l'approche similaire - ils notifient le client dès que le message est reçu par le serveur. Je me demande, comment puis-je personnaliser le message "accusé de réception" envoyé pour se conformer à la norme de l'industrie.
Si WCF ne le permet pas, pouvez-vous me transmettre toute autre solution possible - Remoting, peut-être quelques autres bibliothèques de services Web?
Cette «norme de l'industrie» sent bien le SOAP - a-t-elle un nom ?? WCF peut très certainement prendre en charge des appels à sens unique via, par ex. MSMQ - et votre interlocuteur recevra également un message de confirmation - alors pourquoi réinventer la roue encore et encore - pourquoi ne pas simplement utiliser la liaison MSMQ pour WCF? –
Eh bien, c'est le cas, mais WCF génère beaucoup de choses dans le message SOAP envoyé, ce qui ne correspond pas à la documentation standard, donc je me demandais si je pouvais passer outre. Eh bien, WCF prend en charge les appels unilatéraux pour presque chaque liaison, mais ce dont j'ai besoin est de personnaliser le message "accusé de réception". – Warvick
la norme est "GSA S2S Messaging protocole" http://www.gamingstandards.com/index.php?page=standards/free_downloads_standards – Warvick