2

ADO.NET サイトのサンプルを次に示します。

many:many テーブルの列の名前を変更します。

modelBuilder.Entity<Product>() 
.HasMany(p => p.Tags)
.WithMany(t => t.Products)
.Map(m =>
    {
        m.MapLeftKey(p => p.ProductId, "CustomFkToProductId");
        m.MapRightKey(t => t.TagId, "CustomFkToTagId");
    });

各テーブルの 2 番目の仮想キー (つまり、ProductId2、TagId2) を使用してこの例を拡張してください。

4

1 に答える 1

0

そのためには、セカンダリ列もマップする必要があります。

modelBuilder.Entity<Product>()
            .HasMany(p => p.Tags)
            .WithMany(t => t.Products) 
            .Map(m => 
            { 
                m.MapLeftKey(p => p.ProductId, "CustomFkToProductId");
                m.MapLeftKey(p => p.ProductId2, "CustomFkToProductId2");
                m.MapRightKey(t => t.TagId, "CustomFkToTagId"); 
                m.MapRightKey(t => t.TagId2, "CustomFkToTagId2"); 
            });
于 2011-01-21T16:21:58.420 に答える