我想在我的 JSON 响应中包含 selfLink 和 navigationLink(s),如下所示:
{
"@odata.count": 4,
"@odata.nextLink": http://example.com/v1.0/Entity?$top=2&$skip=2",
"value": [
{
"@odata.selfLink": http://example.com/v1.0/Entity(610375)",
"id": 610375,
"description": "ABCDE",
"OtherEntities@odata.navigationLink": "http://example.com/v1.0/Entity(610375)/OtherEntities"
},
{
"@odata.selfLink": "http://example.com/v1.0/Entity(602762)",
"id": 602762,
"description": "KLMNOP",
"OtherEntities@odata.navigationLink": "http://example.com/v1.0/Entity(602762)/OtherEntities",
}
}
我注意到存在以下方法:
- builder.EntitySet("实体").HasFeedSelfLink(...)
- LinkGenerationHelpers.GenerateSelfLink(..)
但我不知道如何使用它们,或者即使我应该使用它?
更新: 我发现可以在 HTTP 标头中添加Accept: application/json;odata.metadata=full 。这会给我@odata.navigationLink、@odata.id(我对selfLink 的意思)和一大堆其他@odata 元数据。这让我想到了两个新问题:
- 是否可以将默认值更改为 odata-metadata=full 服务器端?
- 是否可以添加自定义元数据格式,只允许我输出其中一些 @odata 元数据,如果可能的话,更改其中一些的名称?