多对多有顺序
many to many with order
我正在使用这个:
modelBuilder.Entity<X>()
.HasMany(u => u.Ys)
.WithMany()
.Map(m =>
{
m.ToTable("XToYs");
m.MapLeftKey("XId");
m.MapRightKey("YId");
});
为 X 和 Y 之间的多对多关系建模。有没有办法像这样添加一个顺序:
XId Yid Order
1 2 1
1 3 2
基本上你想做的是:
public class XY
{
public int XId {get; set;}
public virtual X X{get; set;}
public int YId {get; set;}
public virtual Y Y {get; set;}
public int Order {get; set;}
}
并在您的模型构建器中:
builder.Entity<X>()
.HasMany(x => x.Y)
.WithRequired()
.HasForeignKey(k => k.YId);
builder.Entity<Y>()
.HasMany(y => y.X)
.WithRequired()
.HasForeignKey(k => k.XId);
我正在使用这个:
modelBuilder.Entity<X>()
.HasMany(u => u.Ys)
.WithMany()
.Map(m =>
{
m.ToTable("XToYs");
m.MapLeftKey("XId");
m.MapRightKey("YId");
});
为 X 和 Y 之间的多对多关系建模。有没有办法像这样添加一个顺序:
XId Yid Order
1 2 1
1 3 2
基本上你想做的是:
public class XY
{
public int XId {get; set;}
public virtual X X{get; set;}
public int YId {get; set;}
public virtual Y Y {get; set;}
public int Order {get; set;}
}
并在您的模型构建器中:
builder.Entity<X>()
.HasMany(x => x.Y)
.WithRequired()
.HasForeignKey(k => k.YId);
builder.Entity<Y>()
.HasMany(y => y.X)
.WithRequired()
.HasForeignKey(k => k.XId);