У меня есть конечная точка POST (ASP.NET Web API 2.2), которая ожидает определенный json.
[HttpPost()]
public async Task<IActionResult> SetProcessStart([FromBody]MyDataWrapper myDataWrapper)
MyDataWrapper json включает, например, три параметра.
{
"name": "Heinz",
"color": "green",
"hat": false
}
Двапараметр color и hat являются необязательными.Но когда пользователь передает это:
{
"name": "Heinz"
}
myDataWrapper имеет значение null.
Я попытался:
public async Task<IActionResult> SetProcessStart([FromBody]object myObject)
MyDataWrapper myDataWrapper = (MyDataWrapper)object;
, но это не работает.
Как я могу взять короткий json и сделать его моим MyDataWrapper объектом?
public class MyDataWrapper
{
[JsonProperty("name", Required = Required.Always)]
public string Name { get; set; }
[JsonProperty("color", Required = Required.AllowNull)]
public string Color { get; set; }
[JsonProperty("hat", Required = Required.AllowNull)]
public bool Hat { get; set; }
}