2010-09-19 32 views
2

我有一個Windows窗體項目,我想遷移到使用ASP.NET MVC2的Web應用程序。哪種方法可以將MVC行爲添加到現有的類中?

在這個項目中我有一些POCO類如本例是一個類庫的一部分,我想用二進制參考

public class Person 
{ 
    public int PersonID { get; set; } 

    public string Name { get; set; } 

    public DateTime BornDate { get; set; } 

    ... 
} 

使用有沒有一種方法裏面使用這些類我的Web MVC項目和添加,例如驗證屬性而不修改原始程序集?

感謝幫助

回答

1

你可以看看FluentValidation。它與ASP.NET MVC很好地集成在一起,並允許您不加修改您的POCO對象,輕鬆添加驗證規則。

+0

很好的工具,像添加驗證元信息。謝謝! – Lorenzo

1

您可以通過使用部分類

namespace xxx.Data.yyy 
{ 
    [MetadataType(typeof(Posting_Validation))] 
    public partial class Posting { 
    } 

    public class Posting_Validation { 
     [Required(ErrorMessage = "Need title")] 
     [StringLength(50, ErrorMessage = "Must be under 50 characters")] 
     [DisplayName("Title")] 
     public string Title { get; set; } 

     [Display(AutoGenerateField = false)] 
     [HiddenInput(DisplayValue=false)] 
     public int PostingId { get; set; } 

     [UIHint("tiny_mce")] 
     public string HtmlContent { get; set; } 
    } 
} 
+0

MetadataType屬性應該轉到原始POCO類嗎? – Lorenzo

+0

是的,就像發佈是我的原創課程。 –

+0

呃...這對我來說已經超出了範圍,因爲它破壞了我應該繼續支持的窗體項目的兼容性。這就是我說「沒有修改原始組件」的方式......無論如何;) – Lorenzo

相關問題