Uso l'approccio Entity Framework Code First
nell'applicazione MVC
e ho alcune classi di entità per ogni tabella nel database. D'altra parte, ho bisogno di utilizzare alcuni valori di ricerca, ad esempio genere, stato per il quale non voglio creare un modello di dominio o una tabella separati e per questo motivo devo definire i valori enum
in una classe modello di dominio correlata o una classe separata . Sebbene ci siano molti esempi sul web, non ne ho trovato uno adatto per EF
e MVC
. Potresti fornire un esempio di utilizzo che soddisfi questi requisiti?Utilizzo dei valori enum nel modello di dominio con codice EF Primo approccio
Nota: utilizzo MVC5
e EF6
. Qui è la mia classe di entità chiamata Visitor
e l'entità del campione che può essere definito in una classe separata (Cs file) o nella stessa classe (Cs file):
namespace MyProject.Entities
{
public class Visitor
{
[Key]
public int VisitorID { get; set; }
public string VisitorName { get; set; }
//[ForeignKey("ReasonOfVisit")]
public byte ReasonOfVisit { get; set; }
//code omitted for brevity
}
public enum ReasonOfVisit
{
NotSet = 0,
Business meeting = 1,
Periodic visit = 2,
Getting information = 3,
Leaving package = 4
}
}
@Fabjan Ci dispiace, hai ragione :) Ho aggiunto il mio impegno, potresti aiutare pls? Grazie ... –
Se non sbaglio partendo da EF 5.0 le enumerazioni sono supportate fuori dalla scatola in modo efficace nel senso che puoi semplicemente usare il tuo enum nel modello - 'public ReasonOfVisit ReasonOfVisit {get; impostato; } ' – Fabjan
Che cosa esattamente non funziona? Hai errori? Questo dovrebbe funzionare immediatamente, purché il campo numerico nel database sia definito come int o smallint. –