我有兩個有問題的表。實體框架代碼表之間的前兩個關係
第一張表關於用戶,並且有 -
userId, username, password, etc
。第二個是處理消息,所以它有 -
messageId, senderId, receiverId,
messageContent。
正如你所看到的,senderId
和receiverId
需要從用戶表相關的用戶ID。
但正如我想使用Code First,它只是崩潰。 我得到一個例外:
「將外源KEY約束 'FK_dbo.Messages_dbo.Users_ReceiverId' 上表 '消息' 可能會導致循環或多個級聯路徑指定ON DELETE NO ACTION或ON UPDATE NO ACTION,或修改其他FOREIGN KEY約束。「
這是我是如何做到的Message類的關係:
[ForeignKey("Sender")]
public int SenderId { get; set; }
public virtual User Sender { get; set; }
[ForeignKey("Receiver")]
public int ReceiverId { get; set; }
public virtual User Receiver { get; set; }
任何想法?我現在被卡住了。如果我以數據庫爲先,但它的工作原理非常好,但如果我嘗試Code First,則不會。
不,崩潰... –
爲了記錄在案,如果我只用一個外鍵的領域之一(例如只對發送者),它完美的作品。但是,接收者字段的名稱會像「Receiver_User_UserId」一樣奇怪...... –