Comment : exposer un flux en tant que flux Atom et flux RSS

Windows Communication Foundation (WCF) vous permet de créer un service qui expose un flux de syndication. Cette rubrique traite de la création d'un service de syndication qui expose un flux de syndication à l'aide de Atom 1.0 et RSS 2.0. Ce service expose un point de terminaison qui peut retourner l'un et l'autre format de syndication.

Pour créer un service de syndication de base

  1. Définissez un contrat de service utilisant une interface marquée avec l'attribut WebGetAttribute. Chaque opération exposée comme un flux de syndication retourne un objet SyndicationFeedFormatter. Remarquez les paramètres de l'attribut WebGetAttribute. UriTemplate spécifient l'URL utilisée pour appeler cette opération de service. La chaîne pour ce paramètre contient des littéraux et une variable entre accolades ({format}). Cette variable correspond au paramètre format de l'opération de service. Pour plus d'informations, consultez UriTemplate. BodyStyle affecte la façon dont les messages que cette opération de service envoie et reçoit sont écrits. Bare spécifie que les données envoyées vers et depuis cette opération de service ne sont pas renvoyées à la ligne par les éléments XML définis dans l'infrastructure. Pour plus d'informations, consultez WebMessageBodyStyle.

    Bb412205.note(fr-fr,VS.90).gifRemarque :
    Utilisez ServiceKnownTypeAttribute pour spécifier les types retournés par les opérations de service dans cette interface.

  2. Implémentez le contrat de service.

  3. Créez un objet SyndicationFeed et ajoutez un auteur, une catégorie et une description.

  4. Créez plusieurs objets SyndicationItem.

  5. Ajoutez les objets SyndicationItem au flux.

  6. Utilisez le paramètre de format pour retourner le format demandé.

Pour héberger le service

  1. Créez un objet WebServiceHost.

  2. Ouvrez l'hôte de service, chargez le flux à partir du service, affichez le flux et attendez que l'utilisateur appuie sur ENTRÉE.

Pour appeler GetBlog avec un HTTP GET

  1. Ouvrez Internet Explorer, tapez l'URL suivante et appuyez sur ENTRÉE. https://localhost:8000/BlogService/GetBlog

    L'URL contient l'adresse de base du service (https://localhost:8000/BlogService), l'adresse relative du point de terminaison et l'opération de service à appeler.

Pour appeler GetBlog() à partir d'un code

  1. Créez un XmlReader avec l'adresse de base et la méthode que vous appelez.

  2. Appelez la méthode Load statique, en passant dans le XmlReader que vous venez de créer.

    Cela appelle l'opération de service et remplit un nouvel objet SyndicationFeed avec le module de formatage retourné à partir de l'opération de service.

  3. Accédez à l'objet de flux.

Exemple

Les éléments suivants représentent l'intégralité du code pour cet exemple.

Compilation du code

Lors de la compilation du code précédent, référencez System.ServiceModel.dll et System.ServiceModel.Web.dll.

Voir aussi

Référence

WebHttpBinding
WebGetAttribute