日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

ASP.NET MVC 3.0学习系列文章—Model in ASP.NET MVC 3.0

發布時間:2025/7/14 asp.net 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ASP.NET MVC 3.0学习系列文章—Model in ASP.NET MVC 3.0 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

系列文章

ASP.NET MVC 3.0學習系列文章—序

ASP.NET MVC 3.0學習系列文章--Razor and ASP.NET MVC 3.0

ASP.NET MVC 3.0學習系列文章—Controllers in ASP.NET MVC 3.0

ASP.NET MVC
3.0學習系列文章--Dependency Resolution in ASP.NET MVC 3.0?

?

這篇文章主要介紹如下基本分內容:

??

1. Introduction:

在ASP.NET MVC 3.0中, Model模塊主要是在Validation這部分有很大的增強。包括ASP.NET MVC開發團隊自己寫的使用jQuery來進行客戶端驗證的jquery.validate.unobtrusive.js,以及Remote validation等。剛才在園子看到一個同學寫了一篇文章介紹了Remote validation,寫的挺詳細的,大家可以看看。

http://www.cnblogs.com/serafin/archive/2011/01/25/1944848.html

我也會在這篇文章中稍微給大家介紹如何使用remote 驗證。

總的來說ASP.NET MVC 3.0中的Validation主要的改動有如下三個方面:

a.New attributes b. New interfaces, c. Improved client validation story.

?

2. Validation in MVC 3

在驗證方面分為如下幾部分:

??

3.Data Annotations

微軟的的System.ComponentModel.DataAnnotations就是一個好的驗證方法集合。

你可以看看它主要包含的類:

從它包含的這些方法中可以看出它主要是用來做字段的驗證。在ASP.NET MVC或者是Silverlight中微軟都是使用它來做數據的合法性驗證。當然,在ASP.NET MVC 3.0中結合jQuery的客戶端驗證,使Data Annotation發揮的功能更加完美。

??

4.Custom Validation Attributes

在上面的System.ComponentModel.DataAnnotations命名空間中,有ValidationAttibute這個類,所有的attribute類型的驗證方法所在的類都繼承了它。

比如:

上圖中的Required和StringLength,我們看看它們的所在的類:

這么看來我們可以自定義Validation類,它也繼承ValidationAttribute。

自定義類的結構如下:

??

我們現在自定義一個驗證,來驗證輸入的時間是否是在合法的范圍呢。

當你輸入的時間不是在當前月的前6各月內或者是大于當前時間7天,就給出提示信息。

?

5.Self Validation models

這種方式是在model中來結合 ValidationContext和ValidationResult來提供驗證。

?

例如我們的model中有一個startdate和一個enddate字段,要求輸入的enddate不能小于startdate,那么我們可以使用Self validation model這種驗證模式:

運行結果:

?

?

上面兩種驗證方式都是需要整個Form提交數據時post數據,大家估計都不可能接受,所以ASP.NET MVC團隊在ASP.NET MVC 3中添加了下面兩種驗證方式,

Client Validation和Remote Validation。

?

6.Client Validation:

明眼人都會發現,Microsoft這幾年和jQuery團隊走的很近,ASP.NET MVC項目中更是使用了jQuery來實現客戶端驗證。

很欣慰的是微軟終于放棄了之前自己的AJAX庫。。。。。

在使用jQuery的AJAX認證,需要注意如下幾點:

1.Web.Config中添加設置:

?

2.添加js文件:

3.在Html.FormBegain之前添加:

?

我這里有個例子,大家可以看看使用jquery.validate.unobtrusive.mis.js后,客戶端生成的html有什么區別:

本身html的節點中就有了驗證信息。

?

7.Custom Client Validation

ASP.NET MVC團隊提供的這個客戶端驗證方式也是個擴展性非常強的。

?

例子如下:

?

8.remote validation:

remote validation部分我就不作說明了,文章夠長了。。。。。

大家可以看看http://www.cnblogs.com/serafin/archive/2011/01/25/1944848.html

我個人覺得這個remote validation的原理就是實時向某個Action Post數據,然后再看返回結果是否為空,不為空就顯示Validation Message。主要還是使用了jQUery的ajax。

?

Nick

轉載于:https://www.cnblogs.com/n-pei/archive/2011/01/26/1945018.html

總結

以上是生活随笔為你收集整理的ASP.NET MVC 3.0学习系列文章—Model in ASP.NET MVC 3.0的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。