爲什麼實體框架會複數所有的類名並默認首字母大寫?這樣做的好處是什麼?可能是一個愚蠢的問題......但出於好奇?爲什麼實體框架將實體類名稱複數化並大寫?
0
A
回答
1
在.NET Design Guidelines for Developing Class Libraries的Capitalization Conventions部分,它指出,所有的類名應該是帕斯卡情況下,把它定義爲:
「的標識符 第一個字母,並且每個 的第一個字母后面連接的單詞是 資本可以使用Pascal大小寫 爲三個或更多字符 標識符例如:。
背景色」
至於多元化,我發現當你使用實體框架模型設計器的默認設置時,你會得到相反的結果。它會將複數表格名稱轉換爲單數等值。例如,使用Northwind數據庫並使用默認設置,我發現設計人員會將Products表更改爲名爲Product
的類,將類別表更改爲名爲Category
的類。這是有道理的,因爲對象的單個實例將是Product
而不是Products
。
如果你有相反的效果,那麼我很困惑。不過,請查看Dan Rigsby撰寫的這篇文章 - Entity Framework 4.0: Pluralization,它可能解釋了發生的事情。
2
.NET風格指南指出所有的類名都應該在CamelCase中。
雖然我不知道複數化,但它不是複數化單個實體對象,是嗎?不過,對於收藏會有意義。
0
你應該單數化和複數化一個集合。例如,這是singularazliation和多元化通過ef
var customer = new Customer {}完成的地方。 //奇異類 db.Customers.AddObject(customer); ObjectSEt被複數化
customer.Orders.Add(new Order {});訂單導航屬性是多元化的。
要了解更多,你也可以閱讀我的書中的7-6配方。
相關問題
- 1. 爲什麼實體框架實體集的名稱是「it」?
- 2. 爲什麼實體框架將實體生成爲部分類?
- 3. 爲什麼實體框架?
- 4. 實體框架(實體類)序列化
- 5. 實體框架PK名稱
- 6. 實體框架 - 按名稱
- 7. Bot框架名稱實體
- 8. 實體框架類實例化行爲
- 9. 爲什麼實體框架實體主細節實體編輯
- 10. 停止VS實體框架設計器恢復名稱「實體」
- 11. 爲什麼實體框架表名是複數?
- 12. 實體框架中複雜類型屬性名稱的別名
- 13. 什麼是實體框架
- 14. 實體框架CodeFirst表複數化
- 15. 實體框架:爲什麼實體類的集合類型需要在默認構造函數中實例化?
- 16. 在實體框架中複製實體?
- 17. 實體框架創建重複實體
- 18. 實體框架將實體序列化爲包含相關實體的JSON
- 19. 爲什麼實體框架返回null?
- 20. 實體框架 - 更改表格/實體的顯示名稱
- 21. 實體框架4按名稱動態查詢實體
- 22. 實體框架:實體名稱中的無效字符列表
- 23. 實體框架POCO實體模板:格式屬性名稱
- 24. 兩個不同實體框架中的相同實體名稱
- 25. 實體框架6.模式名稱
- 26. 實體框架:無效的列名稱
- 27. 實體框架4.1:名稱約束
- 28. 實體框架 - 版本屬性名稱
- 29. 更改實體框架模式名稱
- 30. 實體框架表名稱更改
可以關閉多重化。這是默認設置,但您可以根據需要調整設置。 – kubal5003 2010-08-09 20:50:34