Asp.net mvc 4 基于值将枚举文本绑定到WebGrid

Asp.net mvc 4 基于值将枚举文本绑定到WebGrid,asp.net-mvc-4,enums,webgrid,Asp.net Mvc 4,Enums,Webgrid,我一直在WebGrid中绑定各种学生数据。数据包含枚举值,因此绑定Webgrid后,我在输出中获得值,但我想显示该值的相应枚举文本。 下面是我在MVCDemo.Common.Enum命名空间中的枚举 public enum Gender { [Display(Name = "Male")] Male = 1, [Display(Name = "Female")] Female = 2, [Display(Name = "Other")] Oth

我一直在WebGrid中绑定各种学生数据。数据包含枚举值,因此绑定Webgrid后,我在输出中获得值,但我想显示该值的相应枚举文本。 下面是我在MVCDemo.Common.Enum命名空间中的枚举

public enum Gender
{
    [Display(Name = "Male")]
    Male = 1,

    [Display(Name = "Female")]
    Female = 2,

    [Display(Name = "Other")]
    Other = 3
}
这是我的网络网格

var AdminGrid = new WebGrid(source: lstStudent, canPage: true, rowsPerPage: 5, canSort: true, selectionFieldName: "selectedRow");

            @AdminGrid.GetHtml(
                tableStyle: "table table-bordered  table-hover  table-condensed",
                headerStyle: "head",
                alternatingRowStyle: "altRow",
                selectedRowStyle: "selectRow",
                mode: WebGridPagerModes.All,
                rowStyle: "webGridDataRow",
                columns: AdminGrid.Columns(              
                    AdminGrid.Column("Firstname", "First Name"),
                    AdminGrid.Column("Email", "Email"),
                    AdminGrid.Column("Gender", "Gender"),
                    AdminGrid.Column("IdRole", "Role")))
我的问题是性别是枚举类型,但在输出中它显示1、2或3,但我想根据值显示男性、女性和其他

grid.Column("Gender", "Gender",format: (item) => item.Gender == 1 ? 
Enum.Gender.Male : item.Gender == 2 ? Enum.Gender.Female : Enum.Gender.Other),
这是

1 is Male,
2 is Female,
3 is Other

试试看,100%有效。

解决了此问题,如果有人遇到此类问题,可以要求解决