我已经有好几天这个问题,而且我一直在试图解决这个问题。但是我一直在试图解决这个问题。
我正在使用ASP.NET MVC实体框架,我有这个类:
namespace CP.Models
{
[Table("CP-VIP-Preview")]
public class CP_VIP_Preview
{
[Key]
[DisplayName("Occupancy Timeline")]
[Required]
public string occupancyTimeline { get; set; }
public occupancyTimelineTypes occupancyTimelineType
{
get
{
return Enum.Parse(occupancyTimelineTypes, occupancyTimeline);
}
}
}
public class Homefront : DbContext
{
public DbSet<CP_VIP_Preview> Data { get; set; }
}
public enum occupancyTimelineTypes : int
{
TwelveMonths = 12,
FourteenMonths = 14,
SixteenMonths = 16,
EighteenMonths = 18
}
public static class MyExtensions
{
public static SelectList ToSelectList(this occupancyTimelineTypes enumObj)
{
var values = from occupancyTimelineTypes e in Enum.GetValues(typeof(occupancyTimelineTypes))
select new { Id = e, Name = string.Format("{0} Months", Convert.ToInt32(e)) };
return new SelectList(values, "Id", "Name", enumObj);
}
}
}
我要做的是如下,取enum occupancyTimelineTypes方法(12,14,16,18)中的值,并将它们用于下拉菜单,如下所示:
@model CP.Models.CP_VIP_Preview
@using CP.Models
@Html.DropDownListFor(model => model.occupancyTimeline,Model.occupancyTimelineType.ToSelectList());
但是我收到了这些错误:
最佳重载方法匹配&#39; System.Enum.Parse(System.Type,string)&#39;有一些无效的论点。
参数1:无法转换为'CP.Models.occupancyTimelineTypes&#39;到&#39; System.Type&#39;
“CP.Models.occupancyTimelineTypes&#39;是一种&#39;类型&#39;但用作变量&#39;
在我班上的这一行:
return Enum.Parse(occupancyTimelineTypes, occupancyTimeline);
我只是不知道如何解决这个问题,这几天非常令人沮丧。