È consigliabile creare una versione più leggera di un'entità in alcuni casi solo per motivi di prestazioni che puntano alla stessa tabella ma con un minor numero di colonne mappate. E.g Se ho una tabella contatti con 50 colonne e in alcune delle entità correlate che potrebbero essere interessate alla proprietà FirstName e LastName, è una buona idea creare una versione leggera della tabella Contact. Per esempio.Utilizzo della versione Lite di Entity in nHibernate Relations?
public class ContactLite
{
public int Id {get; set;}
public string FirstName {get; set;}
public string LastName {get; set;}
}
Inoltre è possibile mappare più classi sulla stessa tabella?
Voglio utilizzare principalmente per le relazioni. Se ho una relazione Many-2-One, allora non voglio che carichi 50 colonne. – Amitabh
Sempre lo stesso caso. Per impostazione predefinita, molti-to-one vengono caricati come proxy utilizzando la chiave primaria e non verranno caricati affatto se li si esclude come sopra. –
Sfortunatamente sono su nHibernate 1.2 con WCF e il caricamento Lazy non è un'opzione con me. Quindi tutto è impaziente. – Amitabh