指定類外來鍵有注釋(dataannotation)和fluentapi兩種方式,
目前掌握的知識我們先把dataannotation可用的四種方式總結如下
第一種方法:
//1-指定導航屬性,會自動生成外來鍵,命名規則為:「表名_主鍵名」
//public
class
user
public
string name
}public
class
userextinfo
//1-生成外來鍵:user_userid
public
virtual user user
}
第二種方法:
//2-預設情況下與導航屬性的主鍵名稱相同的字段會自動被標記為外來鍵,
public
class
user
public
string name
}public
class
userextinfo
public
virtual user user
} }
第三種方法:可指定生成的資料庫中的列名。
//3-通過[foreignkey]標記指定實體類的屬性為外來鍵,
public
class
user
public
string name
}public
class
userextinfo
[foreignkey(
"f_userid")]
public
virtual user user
}
第四種方法:可指定生成的資料庫中的列名。
//方式2的公升級版,與導航屬性的主鍵名稱相同的字段會自動被標記為外來鍵,然後指定字段對應的資料庫中的列名
public
class
user
public
string name
}public
class
userextinfo
public
virtual user user
}
fluentapi的方法等待補充----------------------
Code First 重複外來鍵
原因 在乙個表中,我有如下字段 表名 orderinfo 列名 companysend,companyreceiver 先展示表結構,手打了,見諒 public class orderinfo public string name public nullablecompanyid1 public n...
PHP多維陣列按指定鍵名排序
對多維陣列按指定鍵名進行排序 arr 要排序的原始陣列 key1 指定的主排序鍵名,eg id sort1 指定的主排序規則,eg sort numeric,sort desc key2 指定的輔排序鍵名,eg sort sort2 指定的輔排序規則,eg sort numeric,sort des...
刪除未指定名稱的外來鍵的儲存過程
資料庫中的某個表a,因為業務原因被移到別的庫。麻煩的是,有幾張子表 b,c,d等 建有指向它的外來鍵,而且在建立時沒有指定統一的外鍵名。如此一來,在不同的環境 開發 測試 生產等 中該外來鍵的名稱不一樣,必須逐個去查詢外鍵名再進行刪除,十分不便。為此,特地編寫了乙個儲存過程,只須指定子表名 b,c,...