原因:在乙個表中,我有如下字段
表名:orderinfo
列名:companysend,companyreceiver
先展示表結構,(手打了,見諒)
public class orderinfo
public string name
public nullablecompanyid1
public nullablecompanyid2
[foreignkey("companyid1")]
public companyinfo company1
[foreignkey("companyid2")]
public companyinfo company2
}public class companyinfo
public string name
public listorder1
public listorder2
}
這裡我們看見,對於order,我存在了兩個關聯company的字段。
如果進入codefirst,那麼實際會出現問題。
大致是,對於companyid會出現4個字段,companyid1,companyid2,companyinfoid1,companyinfoid2
怎麼解決這個問題呢?
我們先明白,出現這個問題,主要是order雖然申明了foreignkey和欄位名稱。但是系統不知道應該對應 order1還是order 2
解決這個問題,我們只需要這個:
protected override void onmodelcreating(dbmodelbuilder modelbuilder)
Code First 指定外來鍵名稱
指定類外來鍵有注釋 dataannotation 和fluentapi兩種方式,目前掌握的知識我們先把dataannotation可用的四種方式總結如下 第一種方法 1 指定導航屬性,會自動生成外來鍵,命名規則為 表名 主鍵名 public class user public string name...
mysql 重複約束 MySQL重複外來鍵約束
當我嘗試匯入資料庫時?出現此錯誤 sql query alter table bid add constraint bid ibfk 4 foreign key auction contact id references auction contact auction contact id add ...
mysql外來鍵和外來鍵約束
1.mysql中 鍵 和 索引 的定義相同,所以外來鍵和主鍵一樣也是索引的一種。不同的是mysql會自動為所有表的主鍵進行索引,但是外來鍵字段必須由使用者進行明確的索引。用於外來鍵關係的字段必須在所有的參照表中進行明確地索引 2.如果表a的主關鍵字是表b中的字段,則該字段稱為表b的外來鍵,表a稱為主...