Dossier Création d'un service Web REST documenté basé sur Windows

Il s'agit ici de créer un service Web basé sur la méthode REST, en s'appuyant sur la technologie Windows Communication Foundation. Décryptage par un expert de SQLI.


cette contribution a été réalisée par joël descombes, architecte logiciel,
Cette contribution a été réalisée par Joël Descombes, architecte logiciel, spécialiste des technologies Microsoft chez SQLI. © SQLI

Il s'agit ici de créer un service web WCF (pour Windows Communication Foundation) basé sur la méthode REST (pour Representational State Transfer). C'est déjà possible depuis la v3.5, cependant dans le cas présent, nos exigences pour ce développement sont les suivantes :

 pas de fichier .svc physique,
 pas de WCF Data Services ou WCF RIA Services,
 besoin d'une page de documentation du service REST.
 fournir des pages d'erreurs utiles pour l'utilisateur final.


Pourquoi donc, ne pas utiliser de fichier svc physique ? En fait, il s'agit ici de simuler une redirection, sans pour autant modifier le nom du fichier existant.

Pourquoi pas WCF Data Services ou WCF RIA Services ? Après tout, ils permettent de générer automatiquement du REST et même plus de l'OData. Simplement, il n'est pas toujours raisonnable d'exposer un modèle de données, ce que font ces deux technologies.

Quant à la documentation du service et les pages d'erreurs, inexistantes jusqu'à présent pour ce type de Web Service, il s'agit d'un plus appréciable.


Pré-requis


Pour cela nous utiliserons le WCF Starter Kit actuellement en preview 2, qu'on téléchargera ici. Nous référencerons la dll Microsoft.ServiceModel.Web.dll qu'elle contient, dans le projet de service.