У меня есть быстрый вопрос о настройке отображений между [Order Details]
, [Products]
и [Orders]
в базе данных Northwind.
[Order Details]
не имеет первичного ключа и выглядит следующим образом
[Order Details]
OrderId (int)
ProductId (int)
...
Итак, мой вопрос: как (и могу ли я) настроить мой класс OrderDetails
для такой работы?
public class OrderDetails
{
public virtual Order Order { get; set; }
public virtual Product Product { get; set; }
public Decimal UnitPrice { get; set; }
public int Quantity { get; set; }
public Decimal Discount { get; set; }
}
Мой контекст данных выглядит следующим образом
public class NorthwindDb : DbContext
{
public DbSet<Product> Products { get; set; }
public DbSet<Category> Categories { get; set; }
public DbSet<Order> Orders { get; set; }
public DbSet<OrderDetails> OrderDetails { get; set; }
public DbSet<Customer> Customers { get; set; }
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Configurations.Add(new OrderDetailsConfiguration());
}
public static void InitializeBecauseOfThatWeirdMetaDataThingThatIDontUnderstandYet()
{
Database.SetInitializer<NorthwindDb>(null);
}
}
И мой OrderDetailsConfiguration
(пустой, потому что я не знаю, что я делаю)
public class OrderDetailsConfiguration : EntityConfiguration<OrderDetails>
{
public OrderDetailsConfiguration()
{
//HasKey(x => x.Order.OrderId);
//HasKey(x => x.Product.ProductId);
}
}
Любые намеки или идеи будут великолепны.