2

我创建了名为“ grouptypejson ”的 json 变量,如下所述:-

var grouptypejson = {
    "opt": [
             {
                "n": "@SampleResource.GENERIC",
                "v": 0
             },
             {
                "n": "@SampleResource.DEPARTMENT",
                "v": 1
             }
           ]
}; 

上面的 json 变量是在 javascript body 下的 cshtml 页面中全局定义的。

我正在使用硬编码值,即 "v":0 & "v":1

我不想使用硬编码值,而是想通过在模型命名空间下定义的枚举获取数字,即下面提到的:-

namespace My.Sample.Models.Enums
{
    public enum FilterEnum
    {
        Generic = 0,
        Department,
        All
    }
}

我想使用上面的枚举读取值并将其存储在硬编码的地方

IE"v":0 & "v":1

我不知道如何将枚举值获取为整数并存储在“v”中。

我尝试使用下面提到的以下内容,但结果分别是通用部门。在上面的 json 变量中用下面的字符串替换了 0 和 1。

 "v":"@FilterEnum.GENERIC" & "v":"@FilterEnum.DEPARTMENT"

请指导我如何做同样的事情,我在我的 html 页面中包含 enum 命名空间。

如果我写错了什么,请纠正我。我是初学者和学习者。

提前致谢。

4

1 回答 1

2

您可以将枚举转换为 int:

var grouptypejson = {
    "opt": [
             {
                "n": "@SampleResource.GENERIC",
                "v": @((int)SampleResource.GENERIC)
             },
             {
                "n": "@SampleResource.DEPARTMENT",
                "v": @((int)SampleResource.DEPARTMENT)
             }
           ]
}; 
于 2013-01-30T09:41:46.780 回答