1

OData Web サービスから取得したので、 URL コンポーネント ( ) が EDM タグにEntity Data Modelどのように関連しているかを理解しようとしています。http://services.odata.org/OData/OData.svc/Category(1)/Products?$top=2&$orderby=name

私が理解しているように、と のCategory両方にすることができますがEntityTypeEntitySetたとえば、ComplexTypeまたは何か他のものにすることはできませんか?

はっきりさせてください!

4

1 に答える 1

1
resourcePath = "/"
[ entityContainerName "." ] entitySetName [collectionNavigation] /
( entityColServiceOpCall / entityColFunctionCall ) [ collectionNavigation ] /
( entityServiceOpCall / entityFunctionCall ) [ singleNavigation ] /
( complexColServiceOpCall / complexColFunctionCall ) [ boundOperation ] /
( complexServiceOpCall / complexFunctionCall ) [ boundOperation / complexPropertyPath ] /
( primitiveColServiceOpCall / primitiveColFunctionCall ) [ boundOperation ] /
( primitiveServiceOpCall / primitiveFunctionCall ) [ boundOperation / value ] /
actionCall

http://www.odata.org/documentation/odata-v3-documentation/abnf/

これを正しく読めば (願わくば)、最初のコンポーネントは常にエンティティ セットの名前でなければなりません。(修飾された) エンティティ タイプは、 の一部として明示的に指定できcollectionNavigation、主に継承ツリーをナビゲートするのに役立ちます。

これを確認できます。WCF 実装は、最初にエンティティ セット名 ("People" など) ではなくエンティティ タイプ名 ("Person" など) を指定すると、適切な 404 を返します。

複合型はエンティティではないため、ID を持たないため、最初のコンポーネントとして指定することもできません (したがって、「関連付けられた」エンティティなしではインスタンスを参照できなくなります)。

うまくいけば、これはあなたの質問に答えます。

于 2013-08-26T10:56:32.033 に答える