Ho creato una classe personalizzata (contatti_lista) che eredita tutti i campi da una classe di Linq (tb_contatti) ed in più gli aggiungo un campo...
public partial class contatti_lista : tb_contatti
{
private bool _predefinito;
public bool predefinito
{
get { return _predefinito; }
set { _predefinito = value; }
}
}
popolo una EntitySet<contatti_lista> ed assegno questa EntitySet<contatti_lista> al datasource di una datagridview.
La griglia viene ben popolata, ma quando clicco sull'header delle colonne per effettuare un ordinamento, mi compare l'errore "MissingMemberException": "Impossibile trovare il membro 'contatti_lista.xxx'. Dove xxx è il nome della colonna cliccata.
Posso ovviare a questo errore solo inserendo nella mia classe "contatti_lista" tutti i campi di "tb_contatti", divenendo così:
public partial class contatti_lista : tb_contatti
{
public string nome { get; set; }
public string cognome { get; set; }
public string tel { get; set; }
private bool _predefinito;
public bool predefinito
{
get { return _predefinito; }
set { _predefinito = value; }
}
}
ma non ha senso!?!?!? i campi dovrebbe averli tutti ereditati (ed infatti la griglia viene popolata)... non capisco quell'eccezione...