これに関連してここでいくつかの質問を見つけましたが、まだ十分ではありません。2 つ目の 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; }
}
ありがとう、
ジョエル