Entity framework 实体框架4.1 RC:重写多对多联接表的名称

Entity framework 实体框架4.1 RC:重写多对多联接表的名称,entity-framework,fluent-interface,entity-framework-4.1,Entity Framework,Fluent Interface,Entity Framework 4.1,在我的代码中,我使用以下方法定义了多对多关系: modelBuilder.Entity<Post>() .HasMany( p => p.Authors ).WithMany(); modelBuilder.Entity() .HasMany(p=>p.Authors).WithMany(); Authors是用户实体的ICollection ModelBuilder会自动创建一个名为姿态的表 如何重写表命名约定,以便在从模型创建数据库时,ModelBuil

在我的代码中,我使用以下方法定义了多对多关系:

modelBuilder.Entity<Post>()
        .HasMany( p => p.Authors ).WithMany();
modelBuilder.Entity()
.HasMany(p=>p.Authors).WithMany();
Authors是用户实体的ICollection

ModelBuilder会自动创建一个名为姿态的表

如何重写表命名约定,以便在从模型创建数据库时,ModelBuilder命名表PostAuthors

谢谢

您可以使用:

modelBuilder.Entity<Post>
    .HasMany(p => p.Authors)
    .WithMany()
    .Map(m => m.ToTable("PostAuthors", "dbo"));
modelBuilder.Entity
.HasMany(p=>p.Authors)
.有很多
.Map(m=>m.ToTable(“PostAuthors”、“dbo”);

我已经更新了问题,使其更清晰-我不想使用名为PostAuthors的现有表,但让ModelBuilder使用该名称创建表(默认情况下,约定将表命名为PostAuthors)。