gpt4 book ai didi

entity-framework-4 - 如何在 Entity Framework CTP5 中映射多对多关系?

转载 作者:行者123 更新时间:2023-12-04 06:32:47 25 4
gpt4 key购买 nike

我正在尝试使用 3 个表(用户 - 连接表 - 语言)映射 2 种类型(用户 -> 语言),看起来模型构建器希望这两种类型相互引用(如 user.languagesSpoken 和 language .UsersSpeaking)。所以基本上我可以构建类似的东西modelBuilder.Entity<User>().HasMany(x=>x.LanguagesSpoken).WithMany(x=>x.UsersSpeaking) .
但是,我不需要从语言到用户的引用 - 并且无法弄清楚如何映射它..
另外,有没有办法指定连接表名称?

谢谢!

最佳答案

以下将解决问题:

public class User
{
public int UserId { get; set; }
public virtual ICollection<Language> LanguagesSpoken { get; set; }
}

public class Language
{
public int LanguageId { get; set; }
public int Name { get; set; }
}

public class Context : DbContext
{
public DbSet<User> Products { get; set; }
public DbSet<Language> Languages { get; set; }

protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<User>()
.HasMany(x => x.LanguagesSpoken)
.WithMany()
.Map(c =>
{
c.ToTable("yourDesiredName");
});
}
}

关于entity-framework-4 - 如何在 Entity Framework CTP5 中映射多对多关系?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5188958/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com