Con codice prima EF4 (utilizzando CTP5) Posso aggiungere una singola proprietà di navigazione insieme alla chiave esterna e rispetterà la denominazione e aggiungerò solo la chiave esterna al tavolo una sola volta. Se poi vado e aggiungo una seconda proprietà dello stesso tipo, la suddivide in 4 colonne sul tavolo anziché solo due.Come posso impostare due proprietà di navigazione dello stesso tipo in Entity Framework
codice di esempio:
Con questo modello, ottengo una singola proprietà aggiunta alla tabella AdapterFrameCapability per PressType nome PressTypeID.
public class AdapterFrameCapability
{
[Key]
public int AdapterFrameCapabilityID { get; set; }
[Required]
public int PressTypeID { get; set; }
public virtual PressType PressType { get; set; }
}
Questa è la configurazione che voglio a modello, ma si traduce in 4 colonne in fase di creazione della tabella, uno ciascuno per FromPressTypeID, FromPressTypeFromPressTypeID, ToPressTypeID e ToPressTypePressTypeID. Idealmente mi piacerebbe solo una colonna per FromPressTypeID e ToPressTypeID. Cosa sto facendo di sbagliato qui?
public class AdapterFrameCapability
{
[Key]
public int AdapterFrameCapabilityID { get; set; }
[Required]
public int FromPressTypeID { get; set; }
[Display(Name = "From Press Type")]
public virtual PressType FromPressType { get; set; }
[Required]
public int ToPressTypeID { get; set; }
[Display(Name = "To Press Type")]
public virtual PressType ToPressType { get; set; }
}