gpt4 book ai didi

entity-framework - 对象树的 EF 代码第一个错误 "The specified index already exists. [ IX_Id ]"

转载 作者:行者123 更新时间:2023-12-01 06:51:06 24 4
gpt4 key购买 nike

首先使用 EF 代码 4.3 我正在尝试使用必需的关系和必需的可选关系来建模对象树。

这是这些类的简单表示

public class Top
{
public int Id { get; set; }
public virtual Middle Middle { get; set; }
}

public class Middle
{
public int Id { get; set; }
public virtual Child Child { get; set; }
}

public class Child
{
public int Id { get; set; }
}

这是 OnModelCreating 代码
modelBuilder.Entity<Top>().HasRequired(t => t.Middle).WithRequiredPrincipal().WillCascadeOnDelete();
modelBuilder.Entity<Middle>().HasRequired(t => t.Child).WithOptional().WillCascadeOnDelete();

这会产生错误 “指定的索引已经存在。[IX_Id]”在 SQLCE 上

检查 db 模式后,两个模型绑定(bind)器流式 API 配置行都在表 Middles 上创建索引 IX_Id。

有谁知道如何解决这个问题?

有没有办法设置索引名称?

谢谢!
帕斯卡

最佳答案

使用此代码;

public class Top
{
public int Id { get; set; }

public int MiddleId { get; set; }

[ForeignKey("MiddleId")]
public virtual Middle Middle { get; set; }
}

public class Middle
{
public int Id { get; set; }

public int ChildId { get; set; }

[ForeignKey("ChildId")]
public virtual Child Child { get; set; }
}

public class Child
{
public int Id { get; set; }
}

关于entity-framework - 对象树的 EF 代码第一个错误 "The specified index already exists. [ IX_Id ]",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9951522/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com