【发布时间】:2013-07-09 18:03:35
【问题描述】:
我有很多 C# 枚举,其中一些启用了标志。例如:
[Flags]
public enum MyEnum
{
item1 = 0x0000,
item2 = 0x0008
}
我将它克隆到 JavaScript 中,如下所示:
my.namespace.MyEnum = {
ITEM1: "item1",
ITEM2: "item2"
}
我正在使用全局 WebApi 转换器将枚举映射到字符串,因为我更喜欢将字符串与 REST API 一起使用:
config.Formatters.JsonFormatter.SerializerSettings.Converters.Add(new StringEnumConverter());
问题是,如果我创建一个使用此枚举的属性,它就不能使用按位运算(即 my.namespace.MyEnum.ITEM1 | my.namespace.MyEnum.ITEM2)并获得所需的结果(“第 1 项,第 2 项")。
除了去掉字符串转换器,有没有合适的方法来实现这种DataContract + JS API for flags enum in JavaScript?
【问题讨论】:
标签: javascript json enums asp.net-web-api