C# 如何在ASP.Net MVC4中从视图中的枚举中获取值

C# 如何在ASP.Net MVC4中从视图中的枚举中获取值,c#,asp.net-mvc-4,enums,C#,Asp.net Mvc 4,Enums,我对ASP.Net几乎没有经验,所以我想我应该问问 试图在create视图中从Enum传递一个值,以便将其传递到数据库,但我不知道如何传递,所以我尝试了一下 我有一个模型,它有一个名为pageID的字段: public class Article { public int pageID = 0; } public class ArticleDBContext : DbContext { public DbSet<

我对ASP.Net几乎没有经验,所以我想我应该问问

试图在create视图中从Enum传递一个值,以便将其传递到数据库,但我不知道如何传递,所以我尝试了一下

我有一个模型,它有一个名为pageID的字段:

    public class Article
    {

       public int pageID = 0;

    }


    public class ArticleDBContext : DbContext
    {
        public DbSet<Article> Articles { get; set; }
    }
}
干杯

试试Enum.GetValues

例如:

enum Colors{ White= 0, Pink= 100, Red= 200, Black= 300};
foreach(int i in Enum.GetValues(typeof(Colors)))
        Console.WriteLine(i);
public static SelectList GetSelectedItemList<T>() where T : struct
    {
        T t = default(T);
        if (!t.GetType().IsEnum) { throw new ArgumentNullException("Please make sure that T is of Enum Type"); }

        var nameList = t.GetType().GetEnumNames();

        int counter = 0;

        Dictionary<int, String> myDictionary = new Dictionary<int, string>();
        if (nameList != null && nameList.Length > 0)
        {
            foreach (var name in nameList)
            {
                T newEnum = (T) Enum.Parse(t.GetType(), name);
                string description = getDescriptionFromEnumValue(newEnum as Enum);

                if (!myDictionary.ContainsKey(counter))
                {
                    myDictionary.Add(counter, description);
                }
                counter++;
            }

            counter = 0;

            return new SelectList(myDictionary, "Key", "Value");
        }

        return null;
    }

    private static string getDescriptionFromEnumValue(Enum value)
    {
        DescriptionAttribute descriptionAttribute =
            value.GetType()
            .GetField(value.ToString())
            .GetCustomAttributes(typeof(DescriptionAttribute), false)
            .SingleOrDefault() as DescriptionAttribute;

        return descriptionAttribute == null ? 
            value.ToString() : descriptionAttribute.Description;
    }
public enum PageIndex : int
{
    [Description("Developmental Disabilities Tip Sheet")]
    ddTipSheets = 1,

    [Description("Hiiiiiiiiiiiiiiiiiiii")]
    Example1 = 2,

    [Description("I don't know what I'm doing")]
    Example2 = 3
};
enum Colors{ White= 0, Pink= 100, Red= 200, Black= 300};
foreach(int i in Enum.GetValues(typeof(Colors)))
        Console.WriteLine(i);