BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

.NET解决方案范围的依赖管理

| 作者 Vinayak Palankar 关注 0 他的粉丝 ,译者 李永伦 关注 0 他的粉丝 发布于 2011年8月19日. 估计阅读时间: 3 分钟 | GMTC大前端的下一站,PWA、Web框架、Node等最新最热的大前端话题邀你一起共同探讨。

NuGet已经发布1.4版了,它在1.3版的基础上做了改进,比如说,可以在解决方案级别进行包的管理,改进Update-Package命令,支持在更新包的时候添加版本范围的约束等等。除了新特性,还有一共88个工作项的修正,其中71个是错误修正。

最新版本的关键特性是NuGet可以在解决方案级别管理包了。在之前的版本,用户不得不打开多个对话框才能把包安装到多个项目,这个过程非常麻烦。有了这个新特性,用户只需打开一个对话框就能向多个项目安装/卸载/更新包了。

NuGet还对包的管理控制台Update-Package做了改进,使之更易在命令行里把多个项目的所有包都保持在相同的版本。Update-Package现在也提供多个选项了。

NuGet组还考虑到更新所有项目里的所有包时可能出现的问题。因为在线列表里的包会更新到最新版本,所以有可能应用程序里的包被升级到一个它不支持的版本。这种情况的处理可以通过选项指定一个版本范围来约束包的更新,确保应用程序里的包不会升级到它不支持的版本。要添加约束,可以手动编辑packages.config文件,在里面使用新的allowedVersions属性。

另外,为了帮助用户把所有项目和它们的包之间的依赖关系可视化,NuGet 1.4带来了Package Visualizer。这个特性只适用于Visual Studio Premium或以上。

除了所有的新特性,还有若干工作项已经得到修复。发布说明特别指出三个已经修复的错误:

  • 问题603:分布于不同仓库的包的依赖关系在指定一个特定的包源就能解析了。
  • 问题1036: 在后期生成事件里添加“NuGet Pack SomeProject.csproj”不再导致无限循环了。
  • 问题961:“-source”选项支持相对路径了。

NuGet 1.5版的工作已经开展了,Phill Haack在他的公告里特别提到将来版本的基调

  • 简单的包的创建过程: 我们一直都想降低创建和分享代码的门槛,无论是在Visual Studio里面还是外面。
  • 适用于企业的NuGet:这包括visual Studio以外的CI场景,还有支持验证的在线列表等。
  • 灵活打包: 包含没有引用但需要部署的程序集,反之亦然。
  • 开发者工作流程: 我们关注那些常见但不满足我们自己预期的工作流程,以及我们可以怎样为它们提供支持。这包括我们已经确知的工作流程,比如使用预发行包等。

NuGet是一个Visual Studio 2010扩展,它使得在使用.NET Framework的Visual Studio项目里添加、删除和更新库和工具变得更加容易。

查看英文原文:Solution Wide Dependency Management for .NET

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT