JS:
$http.post("/api/Checkout/SaveOrderOption", { OrderOption: OrderOption })
C#
[HttpPost]
public void SaveOrderOption(object OrderOption)
{
_Logger.Trace(OrderOption.ToJSON());
}
真的很奇怪。如果我只是反对,我可以获得正确的原始json字符串。
{"OrderOption":{"xxxx":"xxx","www":true,"yyy":true}}
但如果我将类型更改为特定类型,则无法正常工作。
对象的数据变为默认值,而不是I post值。
我试过了[FromBody]
,它也没有用。
答案 0 :(得分:1)
通过将其包装在一个对象中,你在一个对象中有一个对象,我猜你的类型无法识别。只需使用期望它的显式路径发布对象本身。
$http.post("/api/Checkout/SaveOrderOption", OrderOption)
[HttpPost]
[Route("Checkout/SaveOrderOption/{orderOption}")]
public void SaveOrderOption([FromBody]OrderOption orderOption)
{
_Logger.Trace(orderOption.ToJSON());
}
public class OrderOption
{
public string Xxxx { get; set; }
public bool Www { get; set; }
public bool Yyy { get; set; }
}