相关疑难解决方法(0)

从C#中的枚举中获取int值

我有一个叫Questions(复数)的类.在这个类中有一个名为Question(单数)的枚举,看起来像这样.

public enum Question
{
    Role = 2,
    ProjectFunding = 3,
    TotalEmployee = 4,
    NumberOfServers = 5,
    TopBusinessConcern = 6
}
Run Code Online (Sandbox Code Playgroud)

Questions类中,我有一个get(int foo)函数返回一个Questions对象foo.有没有一种简单的方法从枚举中获取整数值,所以我可以做类似的事情Questions.Get(Question.Role)

c# int enums casting

1698
推荐指数
23
解决办法
142万
查看次数

如何遍历C#中的所有枚举值?

这个问题在这里已有答案:
如何在C#中枚举枚举? 26个答案

public enum Foos
{
    A,
    B,
    C
}
Run Code Online (Sandbox Code Playgroud)

有没有办法循环可能的值Foos

基本上?

foreach(Foo in Foos)
Run Code Online (Sandbox Code Playgroud)

.net c# enums language-features

1359
推荐指数
8
解决办法
67万
查看次数

如何从System.Enum转换为基本整数?

我想创建一个泛型方法,用于将任何System.Enum派生类型转换为其对应的整数值,而不进行转换,最好不解析字符串.

例如,我想要的是这样的:

// Trivial example, not actually what I'm doing.
class Converter
{
    int ToInteger(System.Enum anEnum)
    {
        (int)anEnum;
    }
}
Run Code Online (Sandbox Code Playgroud)

但这似乎不起作用.Resharper报告您无法将类型为"System.Enum"的表达式转换为"int"类型.

现在我已经提出了这个解决方案,但我宁愿提高效率.

class Converter
{
    int ToInteger(System.Enum anEnum)
    {
        return int.Parse(anEnum.ToString("d"));
    }
}
Run Code Online (Sandbox Code Playgroud)

有什么建议?

c# enums type-conversion

88
推荐指数
4
解决办法
9万
查看次数

标签 统计

c# ×3

enums ×3

.net ×1

casting ×1

int ×1

language-features ×1

type-conversion ×1