Сначала я использую код EF 4.1 и использую свободный API для конфигурации объекта.
Я использую следующий способ для настройки моих сущностей. Почти каждый ключ таблицы в моей базе данных составлен из "ICustomerId + TableKey", следовательно, каждое отношение внешнего ключа требует, чтобы оно также ссылалось на него.
HasRequired(x => x.Company)
.WithMany(y => y.CompanyContacts)
.HasForeignKey(p => new { p.ICustomerID, p.CompanyID })
.WillCascadeOnDelete(false);
Я хочу реализовать метод в моем базовом классе (который наследуется от EntityTypeConfiguration), который будет принимать TargetEntity, TargetKey и будет выполнять создание внешнего ключа выше указанного (путем автоматического включения ICustomerId).
My Clas Определения: -
public class CompanyContactsMapping
: BaseInsightTypeConfiguration<CompanyContacts,int>
{...
public class BaseInsightTypeConfiguration<T, TKeyType>
: EntityTypeConfiguration<T> where T : BaseInsightEntity<TKeyType>
{...
Любая идея, как я могу реализовать такой метод?