0

我在 global.aspx 中设置了我的 API foramter,如下所示:

var settings = new JsonSerializerSettings()
{
    ContractResolver = new CamelCasePropertyNamesContractResolver(),
    Error = HandleSerializationErrors
};

settings.Converters.Add(new StringEnumConverter());

formatters.JsonFormatter.SerializerSettings = settings;

这是我的获取操作签名:

public List<WhatsNew> Get(int page, int start, int limit, [FromUri] IEnumerable<BusinessArchiveEnum> filterBy)

以下是枚举数组的传输方式:

在此处输入图像描述

这是枚举:

public enum BusinessArchiveEnum
{
    Undefined = 0,
    PurchaseOrder = 1,
    SalesOrder = 2,
    SentTaxInvoice = 3,
    ReceivedTaxInvoice = 4

}

调用操作时,filterBy 参数设置为未定义!!!不像我发的..

知道为什么吗?

更新:

我想我已经解决了,问题出在客户端中,枚举应该使用逗号分隔符而不是 json 数组格式传递。

4

0 回答 0