我是 PATCH|MERGE 的新手,想知道如何在客户端使用它。我不确定要在 JSON 格式的负载正文中发送什么内容。
这里是一个用 C# 编写的 POCO 模型示例,用于讨论目的。
public class Person
{
public Guid Id { get; set; }
public string FullName { get; set; }
public int Age { get; set; }
}
最佳答案
如果您通过 Google 寻找答案,您将看到 JSON 补丁的各种示例,其中 JSON 有效负载描述了一个或多个操作,例如替换/更新值的操作:
PATCH /people/guid123lalala HTTP/1.1
Content-Type: application/json-patch
{
"op": "replace",
"path": "/FullName",
"value": "Willy Lopez"
}
或者这个:
PATCH /people/guid123lalala HTTP/1.1
Content-Type: application/json-patch
[
{"replace": "/FullName", "value": "Willy Lopez"}
]
(我什至不确定 JSON 补丁是否正确。)
但是,不支持 application/json-patch
格式。因此,从 2015 年 1 月开始,对于 WebApi 2.2 上的 OData,只需发送省略不变属性的对象,就像使用普通 JSON 一样:
PATCH /people/guid123lalala HTTP/1.1
Content-Type: application/json
{
FullName: "Willy Lopez"
}
关于json - 如何形成 ASP.NET OData WebApi 的 PATCH 正文?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27944606/