西西軟件下載最安全的下載網(wǎng)站、值得信賴的軟件下載站!

首頁業(yè)內(nèi)動(dòng)態(tài) 軟件新聞 → mvc4 新特性分享

mvc4 新特性分享

相關(guān)軟件相關(guān)文章發(fā)表評論 來源:西西整理時(shí)間:2013/1/29 11:41:15字體大。A-A+

作者:西西點(diǎn)擊:0次評論:0次標(biāo)簽: mvc4

  • 類型:視頻轉(zhuǎn)換大。1.7M語言:中文 評分:5.5
  • 標(biāo)簽:
立即下載

MVC4版是一個(gè)相當(dāng)成熟的基礎(chǔ)上,能夠把重點(diǎn)放在一些更高級的場景。Asp.Net步入4.0的時(shí)代了,MVC4.0出來的新特性很是犀利,各種犀利。分享一下,大家愿意涉足的就了解一哈。MVC 4.0新出的特性可謂關(guān)注最強(qiáng)烈的就是Web API。

一些高級的功能包括:

ASP.NET Web API

Enhancements to default project templates(增強(qiáng)了默認(rèn)的項(xiàng)目模板)

Mobile project template using jQuery Mobile(使用jQuery Mobile的移動(dòng)項(xiàng)目模板)

Display Modes(顯示模式)

Task support for Asynchronous Controllers(任務(wù)支持異步控制器)

Bundling and minifi cation(捆綁和微小)

ASP.NET Web API

ASP.NET MVC的目的是為創(chuàng)建網(wǎng)站。整個(gè)平臺是明顯的設(shè)計(jì)的決定,表示假設(shè)的用法:響應(yīng)瀏覽器請求并返回HTML。

MVC4包括一個(gè)更好的解決方案:ASP.NET Web API的(稱為作為Web API),該框架提供ASP.NET MVC的開發(fā)風(fēng)格,是專為編寫HTTP服務(wù)。這包括修改一些ASP.NET MVC的概念來的HTTP服務(wù)領(lǐng)域,并提供一些新的面向服務(wù)的功能。

這里有一些類似MVC的Web API功能,只適用于HTTP服務(wù)域:

路由:ASP.NET的Web API使用相同的路由系統(tǒng),將URL映射到控制器行動(dòng)。它的背景路由到HTTP服務(wù)的HTTP動(dòng)詞映射到行動(dòng)按照慣例,使代碼更容易閱讀和鼓勵(lì)以下的RESTful設(shè)計(jì)服務(wù)。

模型綁定和驗(yàn)證:正如MVC簡化的過程中,映射輸入值(表單域,cookies,URL參數(shù)等),模型值,Web API的自動(dòng)映射HTTP請求值模型?蓴U(kuò)展性和約束力的制度包括弼基于相同attri-bute-based驗(yàn)證中使用MVC模型綁定。

過濾器:MVC使用過濾器來允許添加行為的行動(dòng)通過屬性。例如,添加[Authorize]屬性的MVC行動(dòng)將禁止匿名訪問,自動(dòng)重定向到登錄頁面。網(wǎng)絡(luò)API也支持一些lters標(biāo)準(zhǔn)的MVC網(wǎng)絡(luò)連接(如服務(wù)的優(yōu)化[Authorize]屬性)和自定義過濾器。

(Scaffolding)腳手架:添加新的Web API控制器使用相同的對話框,用于添加一個(gè)MVC控制器。您可以選擇使用“添加控制器直徑日志來快速支架,一個(gè)Web API控制器的基礎(chǔ)上的實(shí)體框架為基礎(chǔ)的模式類型。

簡易裝置可測性:就像MVC Web API是建立在依賴的概念注射,避免使用全局狀態(tài)。

網(wǎng)絡(luò)API還增加了一些新的概念和功能明確HTTP服務(wù)的發(fā)展:

HTTP的Web編程模型:API開發(fā)工作的經(jīng)驗(yàn)進(jìn)行了優(yōu)化HTTP請求和響應(yīng)。有一個(gè)強(qiáng)類型的HTTP對象模型,HTTP狀態(tài)碼和頭方便等.

方法是基于HTTP:MVC派遣的操作方法是根據(jù)他們的名字。在Web API的方法可以自動(dòng)調(diào)度的基礎(chǔ)上HTTP.

內(nèi)容協(xié)商:HTTP長期以來一直支持系統(tǒng)的內(nèi)容協(xié)商,在瀏覽器(和其他HTTP客戶端)表示他們的反應(yīng)的格式喜好,和服務(wù)器響應(yīng)最高的首選,它可以支持的格式。這意味著,您的控制器可以提供XML,JSON和其他格式(你可以添加你自己的),響應(yīng)任何客戶端最喜歡的格式。這使您可以添加對新格式的支持,而不不必改變?nèi)魏蔚目刂破鞔a.

基于代碼的組態(tài):組態(tài)服務(wù)可能會很復(fù)雜。不像WCF的詳細(xì)復(fù)雜的組態(tài)文件的方法,Web API是完全通過代碼配置。

雖然ASP.NET的Web API包含與MVC4,它可以被單獨(dú)使用。事實(shí)上,它沒有依賴于ASP.NET所有,并且可以自托管的,那就是外托管ASP.NET 和IIS。這意味著您可以運(yùn)行Web API。NET應(yīng)用程序,包括Windows服務(wù)或甚至一個(gè)簡單的控制臺應(yīng)用程序。

Enhancements to Default Project Templates

默認(rèn)的模板的可視化設(shè)計(jì)MVC的1個(gè)項(xiàng)目已經(jīng)基本保持不變通過MVC 3當(dāng)您創(chuàng)建了一個(gè)新的MVC項(xiàng)目,并運(yùn)行它,你有一個(gè)白色方形藍(lán)色背景,如在圖1中示出。 在MVC中,無論是HTML和CSS的默認(rèn)模板已經(jīng)完全重新設(shè)計(jì)。一新的MVC應(yīng)用程序出現(xiàn)如圖1所示。在MVC4中,無論是HTML和CSS的默認(rèn)模板已經(jīng)完全重新設(shè)計(jì)。一新的MVC應(yīng)用程序出現(xiàn)如圖2所示.

圖1.

圖2.

您的網(wǎng)站應(yīng)該擁有自己的定制設(shè)計(jì),這是很好的,在底層的HTML和CSS,MVC4個(gè)項(xiàng)目都可以通過現(xiàn)代化的標(biāo)記和CSS,能夠很好地響應(yīng)不斷增長的移動(dòng)瀏覽器的收視率。

Mobile Project Template Using jQuery Mobile

如果你將要?jiǎng)?chuàng)建的網(wǎng)站,將被視為在移動(dòng)瀏覽器,你可以使用新的移動(dòng)項(xiàng)目模板。此模板預(yù)配置您的網(wǎng)站使用流行的jQuery手機(jī)庫,它提供了風(fēng)格,看起來不錯(cuò),在移動(dòng)設(shè)備上,如下圖所示圖3,4所示。 jQuery Mobile的觸摸優(yōu)化,支持Ajax導(dǎo)航,采用逐行支持移動(dòng)設(shè)備的功能增強(qiáng)。

圖3.

圖4.

Display Modes

顯示模式使用一個(gè)基于約定的方法允許選擇不同的觀點(diǎn)的基礎(chǔ)上瀏覽器發(fā)出請求。默認(rèn)視圖引擎將首先查找與名稱以.Mobile.cshtml瀏覽器的用戶代理時(shí),表示已知的移動(dòng)設(shè)備。此外,您還可以注冊自己的自定義設(shè)備模式,將根據(jù)自己的定制標(biāo)準(zhǔn) - 所有的只是一個(gè)代碼語句。例如,要注冊一個(gè)WinPhone設(shè)備模式,將有助于視圖結(jié)束。.WinPhone.cshtmlto的Windows Phone設(shè)備,你會用下面的代碼,在您的global.asax Application_Startmethod:

DisplayModeProvider.Instance.Modes.Insert(0, new DefaultDisplayMode("WinPhone") 
{ 
ContextCondition = (context => context.GetOverriddenUserAgent().IndexOf 
("Windows Phone OS", StringComparison.OrdinalIgnoreCase) >= 0) 
});

Bundling and Minification

ASP.NET 4支持相同的捆綁和微小的框架中包含ASP.NET4.5。該系統(tǒng)減少了通過結(jié)合幾個(gè)單獨(dú)的腳本引用到您的網(wǎng)站的請求一個(gè)單一的請求。它還“更少”的要求,通過一些技術(shù),如縮短變量名和刪除空白符和注釋。該系統(tǒng)的工作原理,以及對CSS,CSS請求捆綁成一個(gè)單一的請求,和壓縮的CSS請求的大小,以產(chǎn)生使用最少的字節(jié),包括語義分析等先進(jìn)技術(shù)的同等規(guī)則關(guān)閉CSS選擇器。

是高度可配置的捆綁系統(tǒng),使您可以創(chuàng)建自定義捆綁包含特定的腳本,并引用它們與一個(gè)單一的URL。你可以看到一些例子參照在/ App_Start/ BundleConfig.cs在一個(gè)新的MVC應(yīng)用程序使用的默認(rèn)列出的軟件包互聯(lián)網(wǎng)的模板。

一個(gè)不錯(cuò)的副產(chǎn)品利用捆綁和縮小,你可以刪除文件引用你的視圖代碼這意味著,你可以添加或升級腳本庫和CSS網(wǎng)絡(luò)連接文件有不同的文件名,而無需以更新您的視圖布局,因?yàn)橐媚_本和CSS束,而不是單個(gè)文件。例如,MVC的互聯(lián)網(wǎng)應(yīng)用溫度板包括一個(gè)jQuery包,不依賴于版本號:

PSE: collapse; HEIGHT: auto! important; TEXT-ALIGN: left! important; outline: 0px; box-sizing: content-box; border-top-left-radius: 0px; border-top-right-radius: 0px; border-bottom-right-radius: 0px; border-bottom-left-radius: 0px" cellspacing="0" cellpadding="0" border="0">
bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
"~/Scripts/jquery-{version}.js"));

 這是束URL中引用的站點(diǎn)布局(_Layout.cshtml),如下:

@Scripts.Render("~/bundles/jquery")

由于這些引用不依賴jQuery的版本號,更新了jQuery庫(無論是手動(dòng)或通過的NuGet)將被自動(dòng)拿起的捆綁和微小系統(tǒng)無需進(jìn)行任何代碼更改.

Miscellaneous Features(其他特性)

MVC包括了很多以前沒有列出的功能的完整列表是在發(fā)行說明,可在 http://www.asp.net/whitepapers/mvc4-release-notes 看到。

配置的邏輯搬到App_Start:新功能都不錯(cuò),但額外的邏輯通過代碼配置的功能,真的開始變得混亂起來的Global.asax的Application_Start方法。這些配置已經(jīng)移動(dòng)到靜態(tài)類的App_Start目錄.

AuthConfig.cs:配置安全設(shè)置,包括網(wǎng)站的OAuth登錄。

BundleConfig.cs:用于注冊所使用的捆綁和微小的束系統(tǒng)。幾束被添加默認(rèn)情況下,包括jQuery和jQuery驗(yàn)證,jQueryUI,Modernizr,默認(rèn)的CSS引用。

FilterConfig.cs:毫無疑問,這是用來,注冊全球MVC濾波器。唯一的網(wǎng)絡(luò)連接默認(rèn)情況下,濾波器注冊的HandleErrorAttribute,但這個(gè)是一個(gè)偉大的地方,把
其他的網(wǎng)絡(luò)連接濾波器注冊。

RouteConfig.cs:持有的原始MVC的配置語句,配置路由。

WebApiConfig.cs:用于注冊Web API的路線,以及任何其他WebAPI的配置設(shè)置。

空的MVC項(xiàng)目模板:MVC包含一個(gè)空的項(xiàng)目模板,因?yàn)镸VC2,但它是不是真的空,它仍然包含一個(gè)CSS文件,文件夾結(jié)構(gòu),并超過打Javascript的網(wǎng)絡(luò)連接文件。該模板由于受歡迎的請求,已更名為“基本”,和新的空項(xiàng)目模板,真的是空的。

任何地方添加控制器:在此之前,在Visual Studio添加控制器“菜單項(xiàng),僅顯示播放時(shí),右鍵單擊控制器文件夾。然而,使用的控制器文件夾是純粹的組織。 (MVC將識別任何類,它實(shí)現(xiàn)IController接口作為控制器,無論它的位置在您的應(yīng)用程序。)MVC4 Visual Studio工具已被修改以顯示“添加控制器”菜單項(xiàng)的任何你的MVC項(xiàng)目的文件夾中。這允許你組織你的控制器,但你會想,也許把它們分開成邏輯組或分離的MVC和Web API控制器。

    相關(guān)評論

    閱讀本文后您有什么感想? 已有人給出評價(jià)!

    • 8 喜歡喜歡
    • 3 頂
    • 1 難過難過
    • 5 囧
    • 3 圍觀圍觀
    • 2 無聊無聊

    熱門評論

    最新評論

    發(fā)表評論 查看所有評論(0)

    昵稱:
    表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
    字?jǐn)?shù): 0/500 (您的評論需要經(jīng)過審核才能顯示)