首页 / 网页编程 / ASP.NET / Linq to SQL加注Data Annotation在Asp.Net MVC2中的应用
        
            Linq to SQL加注Data Annotation在Asp.Net MVC2中的应用2011-11-18 博客园 我-大熊一.写作前提最近正在做一个Asp.Net MVC2的Project,用到了Linq to SQL,但是对于如何在MVC2中使用 Linq to SQL 生成的强类型加注Data Annotation,我们都知道在MVC2中我们可以定义自己的Model,然后给Model 加Data Annotation,从而在View中可以实现完美的Client Validation(这些Data Annotation也我们也可 以去自己定义)。但是对于Linq to SQL 生成的强类型,我们有两个问题,第一,应该如何实现它的Data Annotation;第二,当我们的Database结构发生改变时,我们通常需要把Linq to SQL里相应的对象先删 除,然后再重新映射,这时我们如何保证我们加的Data Annotation只需要进行最小的改动就可以完成对 新映射的支持?下面我们就上面的问题进行分析和提出我们的解决方案。二.通常MVC的做法首先我们来做一个比较,自定义Model加Annotation,如表1所示:图表1:Product Class 的定义1 public class Product
2 {
3   [DisplayName("Product Name")]
4    [Required(ErrorMessage="Product Name is Required.")]
5   [StringLength (50,ErrorMessage="Max Length of Product Name can not greater than 50  characters.")]
6     public string Name
7     {
8        get;
9       set;
10     }
11
12   [DisplayName("Product  Type")]
13   [Required(ErrorMessage = "Product Type is Required.")]
14    [StringLength(20, ErrorMessage = "Max Length of Product Name can not greater than  20 characters.")]
15   public string Type
16   {
17     get;
18      set;
19   }
20 }