OData 版本 4 深插入
OData version4 deep insert
我正在尝试了解如何在 odata v4 中进行深度插入。 Odata v4 规范说深度插入是可能的。但是我已经尝试了几种方法但无法找到解决方案。每当我尝试 post 一个带有导航数据的实体时,它在服务器端被接收为空。
任何人对此都有任何想法。谢谢
不知道你用的是什么服务端。但是,Web API OData 支持 post 具有导航 属性 的实体。
例如,您的控制器中有一个 Post 方法:
[HttpPost]
public IHttpActionResult Post(Customer customer)
{
int key = _customers.Count();
customer.Id = key + 1;
_customers.Add(customer);
return Created(customer);
}
您可以使用以下示例请求负载在 http://..../odata/Customers
上发出 POST 请求:
User-Agent: Fiddler
Host: localhost:33082
Content-Type: application/json
Content-Length: 134
{
"Id":9,
"Name":"Customer #9",
"Orders":[
{
"OrderId":2,"Price":3.3
}
]
}
谢谢。
我正在尝试了解如何在 odata v4 中进行深度插入。 Odata v4 规范说深度插入是可能的。但是我已经尝试了几种方法但无法找到解决方案。每当我尝试 post 一个带有导航数据的实体时,它在服务器端被接收为空。 任何人对此都有任何想法。谢谢
不知道你用的是什么服务端。但是,Web API OData 支持 post 具有导航 属性 的实体。
例如,您的控制器中有一个 Post 方法:
[HttpPost]
public IHttpActionResult Post(Customer customer)
{
int key = _customers.Count();
customer.Id = key + 1;
_customers.Add(customer);
return Created(customer);
}
您可以使用以下示例请求负载在 http://..../odata/Customers
上发出 POST 请求:
User-Agent: Fiddler
Host: localhost:33082
Content-Type: application/json
Content-Length: 134
{
"Id":9,
"Name":"Customer #9",
"Orders":[
{
"OrderId":2,"Price":3.3
}
]
}
谢谢。