本文介绍了实体框架 - 许多?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我定义一个多对多关系如下:
I'm defining a many-to-many relationship as follows:
modelBuilder.Entity<GameSessionEntry>().
HasMany(c => c.Users).
WithMany(p => p.GameSessionEntries).
Map(
m =>
{
m.MapLeftKey("SessionId");
m.MapRightKey("UserId");
m.ToTable("UserSessions");
});
表'UserSessions'上的外键与列'UserId'可能不能创建
,因为主键列不能是
确定。使用AddForeignKey fluent API完全指定
外键。
我是数据库工作的新用户,EntityFramework
I'm new to database work and the EntityFramework in general - what is it asking me to do?
推荐答案
这是我通常去创建一个多对多的表这不需要流畅的api配置)
This is how I usually go about creating a many to many table (note this requires no fluent api configuration)
public class User
{
public int Id { get; set; }
public virtual ICollection<UserSession> UserSessions { get; set; }
}
public class Session
{
public int Id { get; set; }
public virtual ICollection<UserSession> UserSessions { get; set; }
}
public class UserSession
{
[Key]
[Column(Order = 1)]
public int UserId { get; set; }
[Key]
[Column(Order = 2)]
public int SessionId{ get; set; }
public virtual User User { get; set; }
public virtual Session Session { get; set; }
}
这篇关于实体框架 - 许多?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!