我使用linq来获取除一个之外的一组枚举。这是我的Linq
List<SyncRequestTypeEnum> lstDefaultSyncList = (List<SyncRequestTypeEnum>)(Enum
.GetValues(typeof(SyncRequestTypeEnum))
.Cast<SyncRequestTypeEnum>()
.Except(new SyncRequestTypeEnum[] { SyncRequestTypeEnum.ProjectLevel })).ToList();
SyncRequestTypeEnum是我的枚举类,有3个枚举。
我在这里使用(Enum.GetValues(typeof(SyncRequestTypeEnum))
所以我得到了价值观。现在我将这些值绑定到dropdownlist:
((DropDownList)control).DataSource = HtmlEncodeHelper.HtmlEncode(lstDefaultSyncList );
((DropDownList)control).DataBind();
这不会绑定实际的枚举。在UI中,它将值显示为System.Data.DataRowView
。如果我使用GetNames
代替GetValues
,则会抛出强制转换错误
有人可以为此提供帮助吗?
答案 0 :(得分:0)