WCF Data Servicesの新機能 – Feed Customization
WCF Data Servicesの新機能4)Feed Customization をご紹介します。(2/24に実施されたTechDaysセッションのフォローアップも兼ねています)
このシリーズの目次は以下になります。
1) WCF Data Servicesの新機能 – 射影
2) WCF Data Servicesの新機能 – カウント
3) WCF Data Servicesの新機能 – Server Driven Paging(SDP)
4) WCF Data Servicesの新機能 – Feed Customization
5) WCF Data Servicesの新機能 – データバインド
6) WCF Data Servicesの新機能 – カスタムプロバイダ1
7) WCF Data Servicesの新機能 – カスタムプロバイダ2
8) WCF Data Servicesの新機能 – リクエストパイプライン
9)Open Data Protocolの実装 – Share Point Server 2010のデータを操作する
また以下のトピックに関しては1)の記事を参照してください。
■名称の変更
■新バージョン
■更新モジュール(開発環境)
■今回の説明で使用するDataService
■Feed Customization (Web Friendly Feeds)
WCF Data Servfices(ADO.NET Data Services)はAtomPubをフォーマットとして用いるのですが、従来、そこで使われているAuthorやTitleなどの情報をデータとして使用することはできませんでした。
例えば、Blogサービスなどを作成する場合などは、本来のAtomがもつ情報の利用が望ましいはずです。
v1.5では以下のように実装することが可能です。
Entity Data Medelの.edmxファイルをXMLで開きCSDL部分を手で編集します。
まず、CSDLのRootに対して以下のように名前空間を定義します。
<edmx:ConceptualModels xmlns:m2="https://schemas.microsoft.com/ado/2007/08/dataservices/metadata">
次に使用したいメンバーに対して、Atomのどの情報とマップするかを定義します。下記でBoldになっている部分が追記した個所です。この指定は、jobsエンティティのjob_descをAtomのTitleとするように指定しています。
<!--Feed Customization このメンバーをタイトルにする-->
<Property Name="job_desc"
Type="String"
Nullable="false"
MaxLength="50"
Unicode="false"
FixedLength="false"
m2:FC_TargetPath="SyndicationTitle"
m2:FC_EpmContentKind="Plaintext"
m2:FC_EpmKeepInContent="true" />
後は通常通り使用するだけです。Jobsエンティティをクエリーすると以下のようにTitleタグにjob_descの値が表示されているのが分かります。
下図のようにブラウザの指定(フィードの読みとりビューを有効にするをOnにする)を変更すると・・・
いつものXMLではなく、IEならば下図の様なフィードの購読画面においても、Title(job_desc)を確認することができます。
他にも設定できる項目がありますので、詳細は下からどうぞ(ただし、現時点では少々古い情報になっています。ほどなく最新になると思いますが。)
https://msdn.microsoft.com/ja-jp/library/ee373839(VS.100).aspx