C# 有没有一种方法可以从C中的枚举中获取字符串值#

C# 有没有一种方法可以从C中的枚举中获取字符串值#,c#,C#,我有以下代码: public enum RoleType { Default = 10, Guest = 20, User = 30, Admin = 40, Super = 50 } 有没有什么方法可以让我在枚举中使用某种toString方法,从而得到字符串“Default”、“Guest”。。等我不介意硬编码这些在一个接一个,甚至有一个字典的值硬编码两次内枚举。我只想将所有内容都保存在我的枚举中 string str =Enum.GetName(ty

我有以下代码:

public enum RoleType
{
    Default = 10,
    Guest = 20,
    User = 30,
    Admin = 40,
    Super = 50
}
有没有什么方法可以让我在枚举中使用某种toString方法,从而得到字符串“Default”、“Guest”。。等我不介意硬编码这些在一个接一个,甚至有一个字典的值硬编码两次内枚举。我只想将所有内容都保存在我的枚举中

string str =Enum.GetName(typeof(RoleType), obj);
obj应该是您想要的名称的值

那么
ToString()

string s1=Enum.GetNames(typeof(RoleType), object);

使用RoleType.Guest.ToString()


我想方法名是
GetNames
,我没想到会有这样的名称。有没有办法得到所有的名字和值?对不起,这有点超出了问题的范围。@Shahar,你说得对;我误读了这个问题,认为答案是
GetNames
Console.WriteLine(RoleType.User);

> User

Console.WriteLine(RoleType.User.ToString());

> User
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

    public enum RoleType {
        Default = 10,
        Guest = 20,
        User = 30,
        Admin = 40,
        Super = 50
    }


    class Program {
        static void Main(string[] args) {
            Console.WriteLine(RoleType.Guest.ToString());
            Console.ReadLine();
        }
    }