一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

ASP.NET MVC 3 概述

  原文地址:http://www.ASP.NET/mvc/mvc3

  導言

  ASP.NET MVC3 在 ASP.NET MVC 1 和 2 的基礎上,增加了大量的特性,使得代碼更加簡化,并且可以深度擴展。這篇文章提供包含在此次發布中的許多新特性的說明,分為以下部分:

  • Razor 視圖引擎
  • 支持多視圖引擎
  • Controller 改進
  • JavaScript 和 Ajax
  • Model 驗證的改進
  • 依賴注入 Dependency Injection 的改進
  • 其他新特性

  Razor 視圖引擎

  ASP.NET MVC3 帶來了一種新的名為 Razor 的視圖引擎,提供了下列優點:

  • Razor 的語法簡單且清晰,只需要最小化的輸入
  • Razor 容易學習,語法類似于 C# 和 VB
  • Visual Studio 對于 Razor 提供了智能提示和語法著色
  • Razor 視圖不需要允許程序或者啟動 Web 服務器就可以進行測試

  Razor 現在提供了一些新的特征:

  • @model 用來指定傳到視圖的 Model 類型
  • @*  * 注釋語法
  • 對于整個站點可以一次性設定默認項目,例如布局。
  • Html.Raw 方法提供了沒有進行 HTML 編碼的輸出
  • 支持在多個視圖之間共享代碼 ( _viewstart.cshtml 或者 _viewstart.vbhtml )

  Razor 還包含新的  HTML Helper,例如:

  • Chart. 生成圖表
  • WebGrid, 生成數據表格,支持完整的分頁和排序
  • Crypto,使用 Hash 算法來創建 Hash 和加鹽的口令
  • WebImage, 生成圖片
  • WebMail, 發送電子郵件

  關于 Razor 更多的資料,可以參考下面的資源:

  支持多視圖引擎

  在 ASP.NET MVC3 中,增加視圖的對話框中允許你選擇你希望的視圖引擎,在新建項目對話框中,你可以指定項目默認的視圖引擎,可以選擇 WebForm,Razor,或者開源的視圖引擎,例如:Spark, NHaml, 或者 NDjango.

  控制器的改進

  全局的 Action 過濾器

  有的時候你希望能夠在在一個 Action 方法執行之前或者執行之后執行一些處理邏輯,在 ASP.NET MVC2 中,提供了 Action 過濾器,允許對特定控制器的 Action 方法進行處理,實際上,有時候你希望對所有的 Action 都進行類似的處理,MVC3 允許你將過濾器加入到 GlobalFilters 集合中來創建全局的過濾器,詳細的介紹,參考下列資源:

  新的 ViewBag 屬性

  MVC2 中的控制器支持 ViewData 屬性,允許通過后綁定的字典將數據傳送給視圖模板,在 MVC3 中,你可以通過 ViewBag 來更加簡單的完成。例如,對于 ViewData["Message"] = "text",你可以通過 ViewBag.Message = "text" 來完成。你不需要通過類來定義任何強類型的屬性,因為這是動態屬性,在內部,ViewBag 屬性以名-值對的形式保存在 ViewData 字典中。注意,在許多預發布版本中,這個屬性被稱為 ViewModel。

  新的 ActionResult 類型

  下面的 ActionResult 類型在 MVC3 中是新增的或者被擴展的。

  • HttpNotFoundResult. 向客戶端返回 404 HTTP 狀態.
  • RedirectResult. 基于一個布爾型的參數,返回一個臨時的重定向 (HTTP 302 status code) 或者持久的重定向 (HTTP 301 status code),  結合這個改進,,  Controller 提供了三個方法來支持持久的重定向: RedirectPermanent, RedirectToRoutePermanent, 和 RedirectToActionPermanent. 這些方法返回一個 Permanent  屬性為真的 RedirectResult 對象實例。
  • HttpStatusCodeResult. 返回用戶指定的 HTTP 狀態碼。

  JavaScript 和 Ajax 改進

   默認情況下,在 MVC3 中,Ajax 和驗證使用不引人注目的 unobtrusive  的 JavaScript 方式。unobtrusive  不會在 HTML 中插入行內的 JavaScript ,這使得 HTML 更加精簡和更少干擾,也使得更加容易被替換和定制 JavaScript 庫,在 MVC3 中,驗證助手默認使用 jQuery.Validate 插件完成,如果你希望使用 MVC2 的行為,你可以在 web.config 中通過配置來關閉 unobtrusive ,更多的信息參考下列資源:

  默認啟用了客戶端驗證

  在早先版本的 MVC 中,你需要在視圖中顯式調用 Html.EnableClientValidation 方法來啟用客戶端驗證。在 MVC3 中,已經不再需要了,因為默認就會啟用客戶端驗證。可以在 web.config 中關閉。

  為了使得客戶端驗證工作,你仍然需要在網站中加入對 jQuery 和 jQuery.Validation 庫的引用,你可以在自己的網站中提供,或者使用 Microsoft 或者 Google 的 CDN 服務器

  遠程驗證

  ASP.NET 3 通過一個新的標簽 RemoteAttribute 對 jQuery Validation 插件的遠程驗證提供支持。這允許客戶端的驗證庫自動調用一個你定義在服務器上的自定義的方法來完成只能在服務器上完成的驗證邏輯。

  在下面的例子中,Remote 標簽指定了通過一個定義在 UsersController 中名為 UserNameAvailable 的方法來驗證用戶名字段。

public class User  
{
[Remote(
"UserNameAvailable", "Users")]
public string UserName { get; set; }
}

NET技術ASP.NET MVC 3 概述,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 亚洲精品美女久久久久网站 | 免费看黄网站在线 | 国产人成激情视频在线观看 | 国内精品麻豆 | 色综合天天综久久久噜噜噜久久〔 | 日韩欧美精品一区二区三区 | 亚洲区视频 | 一级做a爰片性色毛片小说 一级做a爰片性色毛片新版的 | 久久国产自偷自偷免 | 国产成人精品视频频 | 久久久精品免费 | 亚洲综合图片区 | 欧美人与禽交 | 欧美特黄aaaaa | 伊人久久网站 | 色播在线观看 | 激情视频在线 | 欧美午夜性 | 看全大色黄大色黄大片一级爽 | 人与禽物videos另类 | 亚洲欧美日韩精品香蕉 | 亚洲一级毛片视频 | 精品日韩在线 | 久久国产精品99久久久久久老狼 | 韩国毛片在线观看 | 日本一区二区三区免费看 | 成人污网站 | 亚洲欧美日韩国产精品第不页 | 99爱在线精品视频网站 | 国产午夜小视频 | 精品欧美一区二区三区精品久久 | 欧美成人全部费免网站 | 欧美在线看欧美高清视频免费 | 香蕉网久久| 精品国内自产拍在线视频 | 国产亚洲精品九九久在线观看 | 日本精品久久久 | 久久91精品综合国产首页 | 91新视频| 色多多在线免费观看 | 91麻豆精品国产综合久久久 |