J'ai une classe comme ceci:Entity Framework ASP.NET - DropDownListFor Enum valeurs
namespace CentralParkVIPPreview.Models
{
[Table("CP-VIP-Preview")]
public class CP_VIP_Preview
{
[Key]
[DisplayName("Occupancy Timeline")]
[Required]
public string occupancyTimeline { get; set; }
}
public class Homefront : DbContext
{
public DbSet<CP_VIP_Preview> Data { get; set; }
}
public enum occupancyTimeline : int
{
TwelveMonths = 12,
FourteenMonths = 14,
SixteenMonths = 16,
EighteenMonths = 18
}
public static class MyExtensions
{
public static SelectList ToSelectList(this occupancyTimeline enumObj)
{
var values = from occupancyTimeline e in Enum.GetValues(typeof(occupancyTimeline))
select new { Id = e, Name = string.Format("{0} Months", Convert.ToInt32(e)) };
return new SelectList(values, "Id", "Name", enumObj);
}
}
}
Ce que je suis en train de faire est le suivant, prenez les valeurs dans la méthode occupancyTimeline enum (12, 14, 16 , 18) et les utiliser pour un menu déroulant comme ceci:
@model CentralParkVIPPreview.Models.CP_VIP_Preview
@using CentralParkVIPPreview.Models
@Html.DropDownListFor(model => model.occupancyTimeline, Model.occupancyTimeline.ToSelectList());
mon problème est que je reçois cette erreur:
'string' does not contain a definition for 'ToSelectList' and the best extension method overload 'CentralParkVIPPreview.Models.MyExtensions.ToSelectList(CentralParkVIPPreview.Models.occupancyTimeline)' has some invalid arguments
sur cette ligne:
Model.occupancyTimeline.ToSelectList()
Ma question est, qu'est-ce que je fais mal?
Je suis confus, à quoi ressemblerait toute ma classe? @Aldo – user979331
J'ai remplacé 'chaîne publique occupancyTimeline {get; ensemble; } 'avec' l'occupation publiqueTimeline OccupationTimelineType { get { return Enum.Parse (ocTimation d'occupation, OccurrenceTimeline); }} ' mais je reçois cette erreur' « CentralParkVIPPreview.Models.occupancyTimeline » est un « type », mais est utilisé comme une « variable » \t ' – user979331
s'il vous plaît voir le code de la classe, je l'ai fait quelques changements qu'il devrait fonctionner ! – Aldo