我有这种情况:
public class Member
{
public int MemberID { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public virtual ICollection<Comment> Comments { get; set; }
}
public class Comment
{
public int CommentID { get; set; }
public string Message { get; set; }
public virtual ICollection<Member> Members { get; set; }
}
public class MemberComment
{
public int MemberID { get; set; }
public int CommentID { get; set; } …Run Code Online (Sandbox Code Playgroud) 您好,我尝试与EF Fluent API使用多对多关系.我有2个POCO课程.
public class Project
{
public int ProjectId { get; set; }
public virtual ICollection<Author> Authors { get; set; }
public Project()
{
Authors = new List<Author>();
}
}
public class Author
{
public int AuthorId { get; set; }
public virtual ICollection<Project> Projects { get; set; }
public Author()
{
Projects = new List<Project>();
}
}
Run Code Online (Sandbox Code Playgroud)
我用这部分代码映射了很多很多关系:
////MANY TO MANY
modelBuilder.Entity<Project>()
.HasMany<Author>(a => a.Authors)
.WithMany(p => p.Projects)
.Map(m =>
{
m.ToTable("ProjectAuthors");
m.MapLeftKey("ProjectId");
m.MapRightKey("AuthorId");
});
Run Code Online (Sandbox Code Playgroud)
这在DB中创建了ProjectsAuthors表.这是我对这种关系映射案例的第一次尝试.
如果我省略了这个映射,它创建了具有类似模式的表AuthorProject.这是正确的bevahior?