2016-05-17 6 views
0

Sharepoint 2013安らかなweb-apiを使用してSharepointデータシートからデータを取得しようとしています。ほとんどの列では私が望む価値が得られますが、1つの列に対してはリンクしか得られません。 私はどのように私はリンクではなく、値を得ることができますか?それが助けになるならば、私はSharepointのデータシートを変更してもらうよう依頼することができますが、私はそれに直接アクセスすることはできません。 SOAP UIとChromeの両方で試した結果、同じ結果が得られました。sharepoint web apiが値ではないリンクを返します

これは単純化のRestfulが http://xxxxx.xxx/_vti_bin/ListData.svc/XXXXUserRegistryをGET!$ = XXXXUsername

を選択し、ここで私がしたいデータへのリンクを持つ応答の一部です。提供される例においてXXXXUsername

<link rel="edit" title="XXXXUserRegistryItem" href="XXXUserRegistry(1600)"/> 
<link  rel="http://schemas.microsoft.com/ado/2007/08/dataservices/related/XXXUsername"  type="application/atom+xml;type=entry" title="XXXXUsername" href="XXXXUserRegistry(1600)/XXXXUsername"/> 

答えて

1

はそうナビゲーションプロパティ呼ばれます。 4.2 Representing a Navigation Propertyによれば:

ナビゲーションプロパティが ゼロまたはそれ以上の他のエンティティへのソースエンティティからの参照を表します。

ナビゲーションプロパティには、延期と という2つの表現があります。遅延表現は、URIを持つ各関連エンティティ を表します。拡張された表現は、拡張された内容を有する各関連エンティティ を表す。

デフォルトでは、サービスは 延期形式の各ナビゲーションプロパティを表す必要があります(SHOULD)。これにより、リソースが節約されます。

クライアントは、$ expandと$ selectの組み合わせを の組み合わせで使用して、ナビゲーションプロパティを展開するように要求できます。サービスは、拡張された形式で要求される各 ナビゲーションプロパティを表す必要があります。

ので、XXXXUsername値を取得するクエリに$expand queryオプションを適用するために、以下に示すよう:

/_vti_bin/ListData.svc/XXXUserRegistry?$select=XXXXUsername&$expand=XXXXUsername 
+1

おかげで、これは私の問題を解決しました – David

関連する問題