NuPack – .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”。
键入"Add-Package elmah” ,导致NuPack 核查Elmah库的在线定位, 下载它, 增加它的引用到你的项目中, 并且自动的增加适当的Elmah 注册条目在你的应用程序的web.config文件中:
现在我们已经为我们的项目设置、安装了Elmah,并且启用了错误报告记录。不需要额外的手工步骤来使它工作。
学习和了解更多关于NuPack的知识
点击下面的链接来学习和了解更多关于NuPack的内容和大量的情景:
Scott Hanselman’s NuPack Tutorial
Phil Haack’s NuPack Post
Bill Simser’s Post on NuPack (he is a non-Microsoft dev working on it)
Rob Reynold’s “Evolution of Package Management on .NET” Post (Rob is one of the leaders of the Nu project and is on the NuPack team)
David Ebbo’s NuPack Post
文档和教程 nupack.codeplex.com
.NET 和开源
我们认为NuPack将是一个 .NET stack 前进的基本成分。这将鼓励更多的开发者使用开源库。有一个标准的软件包管理器集成到Visual Studio ,将同样很有希望的鼓励更多的开源.NET项目创建。
ASP.NET MVC 3 Beta
这个版本是 ASP.NET MVC 3 Preview的一个重要的更新,它包含了大量的功能改善。
除了ASP.NET MVC 3的特性(introduced with the first preview),今天的Beta版本包括:
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 (和<asp:chart> 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:
Phil Haack’s Overview Post
Brad Wilson’s Unobtrusive JavaScript Post
Brad Wilson’s Unobtrusive JavaScript Validation Post
Brad Wilson’s Dependency Injection Series (Model Validation, Model MetaData, Value Providers, Model Binders, Controller Activator, View Page Activator)
下载
Click here 使用Microsoft Web Platform Installer下载和安装ASP.NET MVC 3 Beta 。
或者你也可以下载并安装 ASP.NET MVC 3 Beta(使用一个单独的安装文件) (注:对于今天的beta 版本,你需要先安装AspNetWebPages.msi,然后是AspNetMVC3Setup.exe文件).
WebMatrix Beta 2
这个版本是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整合在一起工作,而不修改现有任何文件(它们都是附加并且安全的在你的机器上安装)。