Сначала я использую код EF4 и хочу создать составной ключ, который состоит из свойства класса и внешнего ключа.У меня есть два класса: заказ и компания.Класс Order содержит ссылку, но она не обязательно будет уникальной для разных компаний.Поэтому я намерен использовать составной ключ, состоящий из Reference и Company.CompanyId.
Я попытался использовать его для установки следующего, но получаю сообщение об ошибке «Выражение ключа недопустимо».
modelBuilder.Entity<Order>().HasKey(o => new { o.Reference, o.Company.CompanyId });
Я также пытался
modelBuilder.Entity<Order>().HasKey(o => new { o.Reference, o.Company });
, и это не удалось.
это мои классы:
public class Order
{
public string Reference { get; set; }
public Company Company { get; set; }
}
public class Company
{
public int CompanyId { get; set; }
public virtual ICollection Orders { get; set; }
}
Любая помощь будет принята с благодарностью.