gpt4 book ai didi

asp.net - EF5 Code First ALTER TABLE 语句与 FOREIGN KEY 约束冲突

转载 作者:行者123 更新时间:2023-12-02 16:30:57 25 4
gpt4 key购买 nike

我在这里发现了几个与此相关的问题,但我还不太清楚。我正在尝试将第二个 UserProfile 属性添加到现有的 CourseRegistration 类中。当我尝试执行迁移时,出现“ALTER TABLE 语句与 FOREIGN KEY 约束“FK_dbo.CourseRegistrations_dbo.UserProfile_InstructorId”冲突”

我以为可以通过一些流畅的配置来解决它,但没有效果。根据我所读到的内容,我认为问题在于现有数据不允许这样做。

问题 1:我不完全理解它在提示什么,如果有人能提供一些线索,我想更好地理解它。问题2:除了删除表或删除数据之外,还有其他解决方法吗?我不介意这次这样做,但我确信在某些情况下这不是一个选择。

[Table("UserProfile")]
public class UserProfile
{
[Key]
[DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
public int UserId { get; set; }
public string UserName { get; set; }
}

public class CourseRegistration
{
[Key]
public int RegistrationId { get; set; }
public int UserId { get; set; }
public int? InstructorId { get; set; }

public virtual UserProfile user { get; set; }
public virtual UserProfile Instructor { get; set; }
}

谢谢

乔尔

最佳答案

参见this ,然后尝试这个:

public class CourseRegistration
{
[Key]
public int RegistrationId { get; set; }
public virtual UserProfile user { get; set; }
[ForeignKey("InstructorId")]
public virtual UserProfile Instructor { get; set; }
}

关于asp.net - EF5 Code First ALTER TABLE 语句与 FOREIGN KEY 约束冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16409427/

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