С первым кодом EF4 (с использованием CTP5) я могу добавить одно свойство навигации вместе с внешним ключом, и он будет уважать именование и только добавить внешний ключ в таблицу за один раз. Если я затем перейду и добавлю второе свойство того же типа, он разбивает его на 4 столбца таблицы вместо двух.
Пример кода:
С помощью этой модели я получаю одно свойство, добавленное в таблицу AdapterFrameCapability для PressType с именем PressTypeID.
public class AdapterFrameCapability
{
[Key]
public int AdapterFrameCapabilityID { get; set; }
[Required]
public int PressTypeID { get; set; }
public virtual PressType PressType { get; set; }
}
Это настройка, которую я хочу моделировать, но она приводит к созданию 4 столбцов в таблице, по одному для параметра FromPressTypeID, FromPressTypeFromPressTypeID, ToPressTypeID и ToPressTypePressTypeID. В идеале я бы просто хотел использовать столбец для параметра FromPressTypeID и ToPressTypeID. Что я здесь делаю неправильно?
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; }
}