JS:
$http.post("/api/Checkout/SaveOrderOption", { OrderOption: OrderOption })
С#
[HttpPost]
public void SaveOrderOption(object OrderOption)
{
_Logger.Trace(OrderOption.ToJSON());
}
Это действительно странно. Если я просто возражу, я могу получить правильную строку json json.
{"OrderOption":{"xxxx":"xxx","www":true,"yyy":true}}
но если я изменяю тип на определенный тип, он не работает.
Данные объекта становятся значениями по умолчанию вместо значения, которое я публикую.
Я попробовал [FromBody]
, он тоже не работает.
Обернув его в объект, у вас есть объект внутри объекта, который, как я предполагаю, ваш тип не распознает. Просто опубликуйте сам объект с явным маршрутом, который его ожидает.
$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; }
}