Share via


方法 : Atom および RSS の両方としてフィードを公開する

Windows Communication Foundation (WCF) では、配信フィードを公開するサービスを作成できます。ここでは、Atom 1.0 と RSS 2.0 の両方を使用して配信フィードを公開する配信サービスを作成する方法について説明します。このサービスは、どちらかの配信フォーマットを返すエンドポイントを公開します。

基本的な配信サービスを作成するには

  1. WebGetAttribute 属性でマークされたインターフェイスを使用して、サービス コントラクトを定義します。配信フィードとして公開される各操作は、SyndicationFeedFormatter オブジェクトを返します。WebGetAttribute のパラメータに注意してください。UriTemplate は、このサービス操作を呼び出すために使用される URL を表します。このパラメータに対する文字列には、({format}) のように、リテラルと変数を中かっこで囲んで指定します。この変数は、サービス操作の format パラメータに対応します。詳細な情報については、次のページを参照してください。 「UriTemplate」を参照してください。BodyStyle は、このサービス操作が送受信するメッセージの書き方に影響を与えます。Bare は、このサービス操作に送受信されるデータが、インフラストラクチャにより定義された XML 要素でラップされないことを表します。詳細な情報については、次のページを参照してください。 「WebMessageBodyStyle」を参照してください。

    Bb412205.note(ja-jp,VS.90).gifメモ :
    このインターフェイスのサービス操作により返される型を指定するには、ServiceKnownTypeAttribute を使用します。

  2. サービス コントラクトを実装します。

  3. SyndicationFeed オブジェクトを作成し、作成者、カテゴリ、および説明を追加します。

  4. 複数の SyndicationItem オブジェクトを作成します。

  5. SyndicationItem オブジェクトをフィードに追加します。

  6. format パラメータを使用して、要求された形式を返します。

サービスをホストするには

  1. WebServiceHost オブジェクトを作成します。

  2. サービス ホストを開き、サービスからフィードを読み込み、フィードを表示してから、ユーザーが Enter キーを押すのを待ちます。

HTTP GET を使用して GetBlog を呼び出すには

  1. Internet Explorer を開いて、URL「https://localhost:8000/BlogService/GetBlog」を入力し、Enter キーを押します。

    この URL には、サービスのベース アドレス (https://localhost:8000/BlogService)、エンドポイントの相対アドレス、および呼び出すサービス操作が含まれます。

コードから GetBlog() を呼び出すには

  1. ベース アドレスと呼び出すメソッドを使用して XmlReader を作成します。

  2. 静的な Load メソッドを呼び出し、作成した XmlReader を渡します。

    これにより、サービス操作が呼び出され、サービス操作から返されたフォーマッタが新しい SyndicationFeed に設定されます。

  3. フィード オブジェクトにアクセスします。

この例の完全なコードの一覧を以下に示します。

コードのコンパイル

上記のコードのコンパイル時には、System.ServiceModel.dll と System.ServiceModel.Web.dll を参照します。

関連項目

リファレンス

WebHttpBinding
WebGetAttribute