0
我有「用戶」和「產品」實體,產品有外鍵給用戶(UserId - > User)。我想多一個外鍵添加到用戶的產品實體,但得到錯誤的遷移C#實體框架外鍵屬性被忽略
我的更新產品實體(例如)
[ForeignKey("User")]
public int? UserId { get; set; }
[ForeignKey("AcceptedBy")]
public int? AcceptedById { get; set; }
[ForeignKey("AcceptedById")]
public User AcceptedBy { get; set; }
[ForeignKey("UserId")]
public User User { get; set; }
Automaticaly創建遷移:
DropForeignKey("dbo.Products", "UserId", "dbo.Users");
AddColumn("dbo.Products", "AcceptedById", c => c.Int());
AddColumn("dbo.Products", "User_Id", c => c.Int());
CreateIndex("dbo.Products", "AcceptedById");
CreateIndex("dbo.Products", "User_Id");
AddForeignKey("dbo.Products", "AcceptedById", "dbo.Users", "Id");
AddForeignKey("dbo.Products", "User_Id", "dbo.Users", "Id");
DropColumn("dbo.Products", "AcceptedByUserId");
所以我UserId屬性被忽略
最初的遷移是怎麼樣的(在這裏更改的)? – grek40
你不需要導航屬性上的'ForeignKey'屬性('AcceptedBy','User') –
@ Mohamed Ahmed我試過了 - 沒有幫助 –