将所选值存储到enumtype

时间:2013-04-08 16:20:11

标签: c# .net asp.net-mvc entity-framework

我有一个有enumtype的页面。以下是pageload

中aspx.cs中的代码
    protected void Page_Load(object sender, EventArgs e)
       {
            if (!IsPostBack)
            {
                RegardingObject();
     ListItem selectedType = dropRegarding.Items.FindByValue(Event.RegardingObjectType.ToString());
                    if(selectedType!=null)
                    {
                        selectedType.Selected = true;
                    }

以下填充下拉列表

      private void RegardingObject()
       {
           dropRegarding.Items.Add(new ListItem("UnknownOrNone","0"));
           dropRegarding.Items.Add(new ListItem("LiveTrack", "10"));
           dropRegarding.Items.Add(new ListItem("Activity", "11"));
       }

同时保存它我正在使用

   Event.RegardingObjectType = (EnumTypes)Enum.Parse(typeof(EnumTypes),
                                        dropRegarding.SelectedItem.ToString());

获取无法将类型'datacontracts.enumtypes'隐式转换为'datacontracts.enumtypes.regardingobjecttype'

在datacontracts.enumtypes.cs中我有

    public class EnumTypes
{

    public enum RegardingObject
    {
        UnknownOrNone = 0,
       LiveTrack = 10,
        Activity = 11
    }

}

2 个答案:

答案 0 :(得分:0)

那是因为EnumTypes不是枚举,RegardingObject是:

Event.RegardingObjectType = (EnumTypes.RegardingObject)Enum.Parse(typeof(EnumTypes.RegardingObject),
    dropRegarding.SelectedItem.ToString());

答案 1 :(得分:0)

这样做

    Event.RegardingObjectType = (EnumTypes.RegardingObjectType)Enum.Parse(typeof(EnumTypes.RegardingObjectType),
                                         dropRegarding.SelectedItem.ToString());

它的EnumTypes.regardingobjecttype而不是enumtypes