JavaScript客户端和WebAPI之间的模型映射

时间:2015-07-09 02:08:56

标签: asp.net-web-api model

我遇到一个JavaScript客户端模型与WebAPI模型不匹配的情况。在以下代码中,客户端的状态字符串,而WebAPI中的状态整数

如何在Post方法中添加 if 语句并且不修改顺序,如何实现状态从字符串到整数的映射>模特?

$.post('/Shipping/UpdateStatus', { orderId: 1000, status: "Accepted"} )

void Post([FromBody] Order order)
{
}

class Order
{
    int OderId { get; set; }
    int ShippingStatus { get; set; };
}

1 个答案:

答案 0 :(得分:3)

您可以使用自定义JSON.NET转换器来实现此目的。有关详细信息,请参阅this post。有关此主题的更多信息,请参阅Parameter Binding in ASP.NET Web API

class Order
{
    int OderId { get; set; }
    [JsonConverter(typeof(CustomIntConverter))]
    int ShippingStatus { get; set; };
}