程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> ASP.NET >> 關於ASP.NET >> Linq to SQL加注Data Annotation在Asp.Net MVC2中的應用

Linq to SQL加注Data Annotation在Asp.Net MVC2中的應用

編輯:關於ASP.NET

一.寫作前提

最近正在做一個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 }

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved