天天看點

一起談.NET技術,ASP.NET MVC 3 Beta新特性以及.Net開源的趨勢----最新譯文

  NuPack是一個開源的軟體包管理器,它使你在項目中能夠更加容易的查找、安裝和使用.NET 庫。它能夠和所有的.NET 項目類型很好的一起工作(包括,沒有任何限制的,ASP.NET Web Forms和ASP.NET MVC).

  NuPack 使維護開源項目的開發者(例如, Moq, NHibernate, Ninject, StructureMap, NUnit, Windsor, RhinoMocks, Elmah, 等等) 能夠去打包他們的庫,并且使用一個線上的,可查找的gallery/catalog 來注冊它們。用戶端NuPack tools –它與Visual Studio 內建度很高– 讓任何一名 .NET開發者在他們的項目中能夠輕松的使用這些類庫,并且安裝它們。

  NuPack 處理庫之間的依賴管理(例如: library1 依賴于library2). 它同樣使你在後續的項目中能夠很容易的修改(并且随意的移除) 庫. 它支援更新web.config 檔案(如果一個包需要配置設定). 同樣,它允許程式包來增加PowerShell scripts 到一個項目中 (例如: scaffold commands).最重要的, NuPack 是透明的– 并且在系統層上沒有安裝任何東西. 相反,它緻力于更加容易的讓你使用你的項目來管理你的庫。

  NuPack本身就是一種開源的項目.  The Outercurve Foundation (formerly CodePlex Foundation)今天宣布接納NuPack 項目到the ASP.NET Open Source Gallery中。

我們的目标是使NuPack在.NET項目中盡可能簡單地整合開源庫。它将支援Visual Studio的所有版本。今天,你能夠使用它的第一個開發版本來開始。

  一個簡單的NuPack場景– 使用 ELMAH

  作為一個簡單的例子來顯示了NuPack能夠做什麼-----讓我們假設我們正在進行一項全新的 ASP.NET 應用程式開發,并且想要使用的流行的“ELMAH”庫來記錄和報告我們網站的錯誤。ELMAH安裝,你需要手動下載下傳,解壓它,增加引用到你的項目中,確定你擁有源碼控制綁定來正确的安裝庫,并更新你的應用程式的web.config 檔案,包括ELMAH HttpModule記錄。所有都是可行的——但有點乏味。  

  當NuPack安裝之後,你能簡單地打開新的“Package Manager Console”,在裡面鍵入”Add-Package elmah”。

一起談.NET技術,ASP.NET MVC 3 Beta新特性以及.Net開源的趨勢----最新譯文

  鍵入"Add-Package elmah” ,導緻NuPack 核查Elmah庫的線上定位, 下載下傳它, 增加它的引用到你的項目中, 并且自動的增加适當的Elmah 注冊條目在你的應用程式的web.config檔案中:

一起談.NET技術,ASP.NET MVC 3 Beta新特性以及.Net開源的趨勢----最新譯文

  現在我們已經為我們的項目設定、安裝了Elmah,并且啟用了錯誤報告記錄。不需要額外的手工步驟來使它工作。

  學習和了解更多關于NuPack的知識

  點選下面的連結來學習和了解更多關于NuPack的内容和大量的情景:

<a href="http://www.hanselman.com/blog/IntroducingNuPackPackageManagementforNETAnotherpieceoftheWebStack.aspx" target="_blank">Scott Hanselman’s NuPack Tutorial</a>

<a href="http://haacked.com/archive/2010/10/06/introducing-nupack-package-manager.aspx" target="_blank">Phil Haack’s NuPack Post</a>

<a href="http://blogs.msdn.com/b/davidebb/archive/2010/10/05/introducing-nupack-the-smart-way-to-bring-bits-into-your-projects.aspx" target="_blank">David Ebbo’s NuPack Post</a>

  .NET 和開源

  我們認為NuPack将是一個 .NET stack 前進的基本成分。這将鼓勵更多的開發者使用開源庫。有一個标準的軟體包管理器內建到Visual Studio ,将同樣很有希望的鼓勵更多的開源.NET項目建立。

  這個版本是 ASP.NET MVC 3 Preview的一個重要的更新,它包含了大量的功能改善。  

Razor 增強功能: ASP.NET MVC 3 支援這個新的Razor 視圖引擎選項。除了ASP.NET MVC 3 Preview中的功能外,今天的Beta版本增加大量的額外功能: Cleaner MVC integration – 包括使用一個新的@model 文法來清潔指定類型被傳送到視圖 。一個新的@helper 文法來申明可重用的HTML helpers 。一個新的 @* *@ 注釋文法。 支援使用Razor的C#和VB 風格。

新的 View Helpers: 新的view helper方法現在已經支援.  它包括一個新的Chart() helper method來動态建立charts (和&lt;asp:chart&gt; control in ASP.NET 4 一樣的特征– 而現在使用view 幫助方法)。同樣,一個新的WebGrid() 幫助方法能夠被用來建立data-grid 風格的使用者界面(包括分頁和排序).  

相容 JavaScript 和HTML 5: 現在,在 ASP.NET MVC 中,AJAX 和Validation helpers 同時使用unobtrusive JavaScript 預設的方法。 Unobtrusive JavaScript 避免注入内聯的JavaScript至HTML中,并且使用新的HTML 5 資料約定來使行為分離(它同樣在舊的浏覽器中很友善)。 這将使你的HTML更小,更清潔,同樣使它更加容易的交換和定制JS 庫。在ASP.NET MVC 3中Validation helpers現在同樣支援使用jQueryValidate這個預設的插件。

依賴性注射模式: 最初的ASP.NET MVC 3 Preview 在Controllers, Views 和Action Filters中更好的支援依賴注入(DI) 。 今天的Beta 版本擴充了該功能,以更好的依賴性注入模式支援Model Binders, Model Validation Providers, Model Metadata Providers, 和Value Providers。它同樣支援一個新的IDependencyResolver 接口,這個接口更加容易的內建依賴注入架構。

NuPack 內建: ASP.NET MVC 3 自動的安裝NuPack 。它将利用NuPack來發現和增加大量的MVC 開展和庫到你的項目中。

其他的: 最初的ASP.NET MVC 3 Preview 增加很多額外的helpers 和類 來更好的日常編碼。  這個 beta包括大量額外的改進:更多的顆粒XSS HTML 輸入驗證,HTML helper 改進以支援HTML 5,Crypto helpers 和散列密碼,更加簡單的Email APIs, 改進的“New Project” 對話框,等等。  

  學習和了解更多關于ASP.NET MVC 3的内容  

  點選下面的連結來了解更多的關于ASP.NET MVC 3 Beta:

<a href="http://haacked.com/archive/2010/10/06/asp-net-mvc-3-beta-released.aspx" target="_blank">Phil Haack’s Overview Post</a>

<a href="http://bradwilson.typepad.com/blog/2010/10/mvc3-unobtrusive-ajax.html" target="_blank">Brad Wilson’s Unobtrusive JavaScript Post</a>

<a href="http://bradwilson.typepad.com/blog/2010/10/mvc3-unobtrusive-validation.html" target="_blank">Brad Wilson’s Unobtrusive JavaScript Validation Post</a>

  下載下傳

或者你也可以下載下傳并安裝 ASP.NET MVC 3 Beta(使用一個單獨的安裝檔案) (注:對于今天的beta 版本,你需要先安裝AspNetWebPages.msi,然後是AspNetMVC3Setup.exe檔案).  

  這個版本是WebMatrix Beta 1 的改進版本,它包括了大量的特征改進。

  除了WebMatrix 特性 introduced with the first beta,今天的Beta 2 版本還包含:

Web Page 增強功能: WebMatrix 通過使用一種新的Razor文法來支援建立單獨的ASP.NET Web 頁面。它包含同樣的文法改進(@helper, @* comment *@, etc) 。現在它同樣支援使用VB 和C#建立頁面。

改進的模闆: WebMatrix 包含了針對于常見場景的模闆項目 。這些模闆項目現在使用HTML 5 和 CSS 3 (并且同樣與downlevel browsers一同工作)。一個新的Wishlist 項目模闆在Beta 2中增加了。

NuPack內建: WebMatrix 提供NuPack內建并且支援一個基于網頁的管理來安裝庫到你正在緻力于的項目中。

Toolkit 支援: 我們正在釋出一個Toolkit,它提供友善的能夠在ASP.NET 應用程式中使用的helpers 。它包含針對于Analytics, Facebook, GamerCard, Gravatar, LinkShare, Captcha, Twitter 和Video scenarios的helpers。

  今天的釋出進一步進化和提升 Microsoft Web Stack。以上所有的功能與.NET 4 and VS 2010整合在一起工作,而不修改現有任何檔案(它們都是附加并且安全的在你的機器上安裝)。

繼續閱讀