小编Cla*_*ato的帖子

Asp.Net Web Api OData Controller (V3) 不使用全局配置的 JsonConverter

我有一个 OData 控制器,它返回一个包含 Enum 属性的模型。Json 的默认行为是解析枚举以返回值名称而不是其 Int 值。我创建了一个自定义 Json 转换器,它使用 int 值(仍然是 OData 规范之后的字符串),并在 Global.asax 文件上指定了这个转换器。问题是 OdataController 根本不使用转换器。

我的问题是,我是否遗漏了什么或对 Odata 进行了错误的配置?我知道这与常规 APIController 一起工作正常。

第二个问题(实际上更像是一种意见),我使用 OData 的方式是错误的吗?到目前为止,使用 ODataController 已被证明对于我的场景来说麻烦而不是值得。

这是一个复制问题的示例:

public enum Currency {
    [Display(Name = "British Pound")]
    GBP = 1,
    [Display(Name = "Dollar")]
    USD = 2,
    [Display(Name = "Euro")]
    EUR = 3,
    [Display(Name = "Brazilian Real")]
    BRL = 4
}
public class OrderItem {
    public int Id { get; set; }
    public string Description { get; set; }
    public decimal …
Run Code Online (Sandbox Code Playgroud)

c# enums json odata asp.net-web-api

5
推荐指数
0
解决办法
526
查看次数

标签 统计

asp.net-web-api ×1

c# ×1

enums ×1

json ×1

odata ×1