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

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

主站蜘蛛池模板: 九九九网站| 麻豆精品久久久一区二区 | 亚洲一区在线观看视频 | jizz亚洲视频| 亚洲精品亚洲人成在线播放 | 经典国产乱子伦精品视频 | 91麻豆精品激情在线观看最新 | 久久中文字幕一区二区三区 | 欧美视频在线观看 | 天天做天天爽爽快快 | 最新国产精品精品视频 | 国产玖玖视频 | 天天躁日日躁成人字幕aⅴ 天天躁日日躁狠狠躁中文字幕老牛 | 99在线免费播放 | 亚洲乱码一二三四区乱码 | 国产一区二区三区不卡观 | 国产黄色片在线播放 | 日本伊人色综合网站 | 欧美人体大胆做受 | 伊人激情久久综合中文字幕 | 91视频影院| 视频在线观看一区 | 亚洲小说区图片区另类春色 | 国产美女福利在线 | 视频一区 精品自拍 | 欧美视频在线观看免费播放 | 久久福利一区二区 | 色老板在线永久免费视频凹凸 | 五月婷婷丁香综合网 | 手机在线一区二区三区 | 国产精品视频分类 | 四虎影视国产884a精品亚洲 | 五月婷综合 | 在线观看视频一区 | 亚洲第一区在线观看 | 一区二区三区精品视频 | 91久久国产综合精品女同国语 | 欧美丝袜xxxxx在线播放 | 在线播放一区二区三区 | 国产三级福利 | 亚洲狠狠综合久久 |