Enum values returned as numeric
本问题已经有最佳答案,请猛点这里访问。
当我从javascript调用一个控制器时,字符串值被正确地自动转换为具有相同名称的枚举字段。但是,反过来,从控制器返回json(),让枚举字段发送它的数值而不是字符串表示形式。
我如何才能让字符串表示返回到JavaScript,而不侵入序列化程序那么多。下面是我目前拥有的,我认为它会起作用,但事实并非如此。Ajax调用仍返回0或1。
1 2 3 4 5 6 7 8 9 | [DataContract] public enum Uom { [EnumMember(Value="CD")] CD = 0, [EnumMember(Value="SD")] SD } |
在
添加以下内容
1 2 | config.Formatters.JsonFormatter.SerializerSettings.Converters.Add (new Newtonsoft.Json.Converters.StringEnumConverter()); |
这将把所有枚举更改为字符串。希望这有帮助。