Ho una classe:Come mappare una proprietà come non una colonna in EF 4.1
public class classParty
{
private int _arrivedCount;
public int PartyID {get; private set;}
public DateTime PartyDate {get; private set;}
public int ArrivedCount
{
get
{
return _arrivedCount;
}
set
{
_arrivedCount = value;
}
}
}
posso mappare la PartyId e la PartyDate ma io non avere una colonna per ArrivedCount (si tratta di un momento in conteggio del tempo, non persiste).
Come si comunica a EF 4.1 di interrompere la ricerca di una colonna denominata "ArrivedCount"? Non è nel tavolo. Non sarà sul tavolo. È semplicemente una proprietà dell'oggetto e basta.
Grazie in anticipo.
MODIFICA: Ecco la configurazione API Fluent per classParty.
public class PartyConfiguration : EntityTypeConfiguration<classParty>
{
public PartyConfiguration()
: base()
{
HasKey(p => p.PartyID);
Property(p => p.PartyID)
.HasColumnName("PartyID")
.HasDatabaseGeneratedOption(DatabaseGeneratedOption.Identity)
.IsRequired();
Property(p => p.PartyDate)
.HasColumnName("PartyDate")
.IsRequired();
ToTable("Party");
}
}
Sì, questo è tutto. Esiste una riga di codice da aggiungere alla classe EntityTypeConfiguration? Mi piacerebbe che tutti i mapping (e "unmappings") fossero in un posto. Ma se no, questo funziona bene. –
@TomPadilla: usa semplicemente "Ignora (x => x.ArrivedCount);" nel tuo costruttore 'PartyConfiguration'. – Slauma