2011-06-09 82 views
1

我有一个多项目ASP.NET Web窗体应用程序解决方案。我需要将解决方案中的其他项目共享一个母版页(3个文件),一些用户控件以及一些图像,脚本和CSS文件。更新现有Nuget包中的文件

我已经创建使用每个文档的NuGet包Explorer中的包:

http://docs.nuget.org/docs/creating-packages/using-a-gui-to-build-packages

我现在的问题是这样的:我已经在根项目共享的文件更新,现在我想更新将该包拉入其他项目之前(当前包装在我的开发机器上的本地文件夹中)。 我该怎么做?

如果任何人有一定的工具入门,快速的NuGet链接,请分享作为官方文档只是不这样做对我来说。

回答

1

与又名新版本再次创建包如果原单是1.0使这个1.1的NuGet将搭载更新。

+0

会给这个镜头...但它是否有必要实际“创造”它而不是“升级”它呢? – IrishChieftain 2011-06-10 14:54:25

+0

没有“升级”软件包的概念......你可以在包资源管理器中打开包并编辑包并保存:) – 2011-06-10 16:25:11

+0

好的,已经更新并保存了。但是,当我尝试将库包引用添加到子项目时,更新没有出现在GUI中;我可以在安装的软件包列表中看到“MyPackage”,但没有显示软件包更新... – IrishChieftain 2011-06-10 16:40:41

0

你问你需要做的更新已使用包项目是什么?

在这种场景中最关键的事情是简单的版本。新版本的文件将被删除。再次使用新版本号捆绑软件包,然后从VS中的软件包管理器控制台运行Update-Package。

您可能还需要考虑几个分立的包,而不是一个直线之一。如果你想更新一对夫妇的图片或CSS文件,但不是MasterPage,那么可能最好有一个更小的。

使用PM资源管理器(从你提到的帖子)从NuGet主存储库,特别是jQuery 1.5.1和1.6.x打开一对包,看看,因为这些将做非常类似的事情。没有真正的魔法需要!

干杯。

+0

只是尝试这样做,从PM命令行:更新-包MyPackage的-Version 1.1 - 源C:\ VS2010和得到这个:适用于“MyPackage的”无更新。 – IrishChieftain 2011-06-09 21:28:17

+0

所以,让我们来验证几件事情:你的编译包是在c:\ vs2010中吗?你目前安装的版本是什么(输入Get-Package来确认)?你的新软件包与你的软件包是不同的版本吗?另外,你是指包管理器控制台还是nuget命令行? – MisterJames 2011-06-10 13:40:29

+0

不是已编译的软件包,全部包含在内容文件夹中。掌握和支持文件 - 在dest中成功编译。项目。 1.0升级到1.1升级不起作用 - 仍然显示1.0。使用PM控制台 - 何时使用PM控制台上的Nuget.exe? – IrishChieftain 2011-06-10 14:46:07

0

我已经做过之前。您只需在.nuspec文件的元数据内增加软件包的版本。

就我而言,我的包名称是 '[名]。[版本] .nupkg' 所以我救我的新包装为 '[名]。[版本+1] .nupkg' 为好。

“管理nuget包更新”部分中的更新apears。