相关疑难解决方法(0)

实体框架 - 多对多的关系

您好,我尝试与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?

c# entity-relationship many-to-many entity-framework-4.1

3
推荐指数
1
解决办法
2105
查看次数