2011-08-23 56 views
1

我似乎沒有弄清楚如何在ASP.NET MVC 3模型中使用枚舉值(使用代碼優先方法),以便它們存儲在數據庫中並且保存。在存儲在數據庫中的模型中使用枚舉值

我的模型代碼如下所示:

public class TestNews 
{ 
    public int Id { get; set; } 

    [Required] 
    public DateTime Date { get; set; } 

    [Required] 
    //[EnumDataType(typeof(TestNewsType))]? 
    public TestNewsType Type { get; set; } 

    [Required] 
    public string Title { get; set; } 
} 

public enum TestNewsType : short 
{ 
    Draft = 0, 
    PublishedPublicly = 1, 
    PublishedInternally = 2, 
    Removed = 3 
} 

後的數據庫被重新它包含表TestNews,但只包含列:

  • 編號
  • 日期
  • 標題

如何使它在數據庫中存儲Type?還應該使用EnumDataType註釋嗎?

我以後會喜歡用它在一個控制器動作,如:

public ActionResult Latest(int count=5) 
    { 
     var model = db.TestNews 
      .Where(n => n.Type == TestNewsType.PublishedPublicly) 
      .OrderByDescending(n => n.Date) 
      .Take(count) 
      .ToList(); 
     return PartialView(model); 
    } 

回答

相關問題