1
A
回答
3
用流利的API,您必須使用匿名類型:
modelBuilder.Entity<YourType>()
.HasKey(e => new
{
e.VarChar,
e.Int1,
e.Int2
});
其它方式使用數據註釋:
public class YourType
{
[Key, Column(Order = 0)]
public string VarChar { get; set; }
[Key, Column(Order = 1)]
public int Int1 { get; set; }
[Key, Column(Order = 2)]
public int Int2 { get; set; }
}
在列的兩個場景順序很重要。一旦你嘗試使用DbSet<YourType>.Find
,你將不得不以相同的順序提供密鑰。 EF還在內部使用訂單。
相關問題
- 1. 非集羣主鍵實體框架代碼優先
- 2. 實體框架 - 代碼第一 - 一個與共享主鍵
- 3. 實體框架建模代碼優先
- 4. 實體框架代碼優先使用
- 5. 實體框架代碼優先映射
- 6. 實體框架,代碼優先和datetimes
- 7. 與實體框架代碼優先
- 8. 在實體框架代碼優先4.1
- 9. 映射實體框架「代碼優先」
- 10. 實體框架代碼優先 - 界面
- 11. 實體框架 - 代碼優先Fluent API:ErrorMessage?
- 12. 實體框架代碼優先的NullReferenceException
- 13. 實體框架 - 代碼優先方法
- 14. 播種實體框架代碼優先
- 15. 實體框架+ PostgreSQL代碼優先
- 16. 實體框架代碼優先 - 關係
- 17. MySql和實體框架代碼優先
- 18. 實體框架:數據庫優先/代碼優先混合
- 19. 實體框架端口從模型優先到代碼優先
- 20. 代碼優先或模型優先(實體框架/ RIA服務)
- 21. 實體框架代碼優先外鍵問題
- 22. 實體框架代碼優先 - 外鍵關係
- 23. 創建與實體框架代碼優先約束或鍵ApplicationUser
- 24. 實體框架 - 代碼優先 - 更新不會更改外鍵
- 25. 實體框架代碼優先 - 設置外鍵/導航屬性
- 26. 實體框架代碼優先空外鍵
- 27. 實體框架中的唯一鍵約束代碼優先
- 28. 空實體框架中的外鍵代碼優先
- 29. 用實體框架代碼優先定義外鍵約束
- 30. 實體框架 - EF代碼優先選擇外鍵