我有两张有点问题的桌子。
第一个表是关于用户的,并且有 -
userId, username, password, etc
。第二个是处理消息,所以它有
messageId, senderId, receiverId,
-messageContent。
如您所见,两者都senderId
需要receiverId
与 users 表中的 userId 相关。
但是当我尝试使用 Code First 时,它只是崩溃了。我得到一个例外:
“在表 'Messages' 上引入 FOREIGN 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; }
有任何想法吗?我现在被困住了。如果我先做数据库,它工作得非常好,但如果我先试试代码就不行。