在創建實體並在.NET中設置其實現(有效枚舉)屬性時,我需要一些關於最佳實踐的建議。作爲枚舉或對象的.NET實體屬性
舉一個簡單的例子,假設我有一個名爲 '待辦事項' 的對象,它有三個屬性:
ID(INT)
文本(字符串)
國家(NotStarted,inProgress,則完成)
我的待辦事項對象將存儲在一個SQL Server數據庫中,'Type'屬性存儲爲int。國有財產不會有任何其他信息或與之相關的方法,只是標記了Todo實例的完整性。
應該如下我被創造Todo.cs枚舉(的Todo類外):
public enum TodoState
{
NotStarted = 0,
InProgress = 1,
Complete = 2
}
在這之後,我可以創造我的Todo類爲:
public class Todo
{
public int Id { get; set; }
public string Text { get; set; }
public TodoState State { get; set; }
}
還是應該我正在創建一個具有內部枚舉和靜態構造函數的TodoState類?還是有更好的完全不同的方式來做到這一點?
除了您認爲在這種情況下實現此目標的最佳方法之外,解決此類問題的行業標準方法是什麼?提前致謝。
應該注意的是,EF5僅支持.NET Framework 4.5或更高版本(Visual Studio 2012)中的枚舉。 VS2010上的EF5不支持它們(技術上它是EF4.4,但它在安裝5時已安裝) – 2013-03-20 19:19:02
@MystereMan感謝您指出這一點。 – 2013-03-20 19:24:50
@MystereMan然而,EF6將支持.NET上的枚舉4 http://blogs.msdn.com/b/adonet/archive/2012/10/30/ef6-alpha-1-available-on-nuget.aspx – Phil 2013-03-20 19:26:46