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

时间:2012-10-13 17:42:43

标签: c#

我有以下代码:

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

有没有什么方法可以让我在枚举中有一些toString方法,它会给我字符串“Default”,“Guest”..等我不介意一个接一个地硬编码这些甚至有一个字典,其值在枚举内硬编码两次。我只想把所有内容都保存在我的枚举中。

4 个答案:

答案 0 :(得分:2)

ToString()怎么样?

Console.WriteLine(RoleType.User);

> User

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

> User

答案 1 :(得分:1)

使用RoleType.Guest.ToString()

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();
        }
    }

答案 2 :(得分:0)

string str =Enum.GetName(typeof(RoleType), obj);

obj应该是您想要

名称的值

答案 3 :(得分:0)

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