一区二区久久-一区二区三区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 概述,轉載需保留來源!

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

主站蜘蛛池模板: 最新国产在线视频 | 色网在线免费观看 | 四虎影视4hutv最新地址在线 | 免费99精品国产自在现线观看 | 日本高清一区二区三区不卡免费 | 国产精品综合色区在线观看 | 五月天丁香婷婷开心激情五月 | 手机看片自拍日韩日韩高清 | 一级女人毛片 | 伊人精品综合 | 色网在线| 黑人一区二区三区中文字幕 | 国产小视频在线看 | 午夜精品免费 | 久久新视频 | 欧美人与禽zoz0性伦交 | 久中文字幕中文字幕亚洲无线 | 欧美日韩看看2015永久免费 | 精品视频免费在线 | www.日本高清视频 | 久久99精品国产99久久 | 欧美久 | 91视频免费视频 | 深爱综合网 | 99热最新网站| 五月婷婷丁香在线视频 | 狠狠久久久久综合网 | 欧美精品v日韩精品v国产精品 | 97影院在线午夜 | 97精品久久久久中文字幕 | 嫩草精品| 国产成人精品久久亚洲高清不卡 | 91精品国产综合久久青草 | 国产精品激情综合久久 | 在线国产二区 | 91系列在线观看免费 | 黄色影院在线看 | 91精品啪在线看国产网站 | 日韩视频在线观看一区 | 深夜福利一区 | 91亚洲欧美综合高清在线 |