Ho utilizzato Entity Framework con VS2010 per creare una classe di una persona semplice con proprietà, firstName, lastName ed email. Se voglio allegare DataAnnotations come in questo blog post ho un piccolo problema perché la mia classe persona viene generata dinamicamente. Potrei modificare direttamente il codice generato dinamicamente ma ogni volta che devo aggiornare il mio modello tutto il mio codice di convalida verrebbe cancellato.Utilizzo di DataAnnotations con Entity Framework
Il primo istinto era quello di creare una classe parziale e provare ad allegare annotazioni ma si lamenta che sto provando a ridefinire la proprietà. Non sono sicuro che tu possa fare dichiarazioni di proprietà in dichiarazioni di funzione come C# in C++. Se potessi quella potrebbe essere la risposta. Ecco un frammento di quello che ho provato:
namespace PersonWeb.Models
{
public partial class Person
{
[RegularExpression(@"(\w|\.)[email protected](\w|\.)+", ErrorMessage = "Email is invalid")]
public string Email { get; set; }
/* ERROR: The type 'Person' already contains a definition for 'Email' */
}
}
Sono davvero deluso dal fatto che non è possibile definire una classe parziale e decorarla con Annotazioni dei dati come mostrato nel proprio esempio di codice. Quello fu il mio primo istinto; poi mi sono imbattuto in questo post e non vedo nessuna soluzione che mi sembra attraente. Il team di ef dovrebbe fornire un meccanismo di mappatura per aggirare questa idiosincrasia piuttosto noiosa. – nocarrier