【发布时间】:2017-11-15 02:09:08
【问题描述】:
我正在使用 EF Code First 6.2 和 Dev Express XAF 在 DevExpress.Persistent.BaseImpl.EF 中,Event 类与 Resource 类具有多对多关系。
如果我使用带有 Code First 的 Dev Express 向导创建一个新项目,那么连接表将被称为 ResourceEvents
然而,在某些迁移中,我的连接表被重命名为 EventResources。
如何将其设置回应有的状态? 我尝试将以下内容添加到 DBContext
modelBuilder.Entity<Event>().HasMany(x => x.Resources).WithMany(x => x.Events)
.Map(
x =>
{
x.MapLeftKey("Event_ID");
x.MapRightKey("Resource_Key");
x.ToTable("ResourceEvents");
});
这会导致要创建迁移
public partial class ev : DbMigration
{
public override void Up()
{
DropPrimaryKey("dbo.ResourceEvents");
AddPrimaryKey("dbo.ResourceEvents", new[] { "Event_ID", "Resource_Key" });
}
public override void Down()
{
DropPrimaryKey("dbo.ResourceEvents");
AddPrimaryKey("dbo.ResourceEvents", new[] { "Resource_Key", "Event_ID" });
}
}
运行迁移会导致错误
Cannot find the object "dbo.ResourceEvents" because it does not exist or you do not have permissions.
【问题讨论】:
标签: entity-framework-6 entity-framework-migrations