Nuget无法安装特定版本

Dmi*_*tov 3 nuget

我是能够建立自己的NuGet服务器(如描述在这里).服务器Packages文件夹包含多个版本MyPackage,例如1.0.8.0和1.0.9.0.当我以默认方式安装它(没有指定版本)时,它会成功安装.但是当我明确地做的时候

Install-Package MyPackage -Version 1.0.9.0
Run Code Online (Sandbox Code Playgroud)

它出错了以下消息:

安装包:无法找到包'MyPackage'的版本'1.0.9.0'.在行:1 char:16 + install-package <<<< MyPackage -Version 1.0.9.0 + CategoryInfo:NotSpecified:(:) [Install-Package],InvalidOperationException + FullyQualifiedErrorId:NuGetCmdletUnhandledException,NuGet.PowerShell.Commands.InstallPackageCommand

更新:Package Source在程序包管理器控制台中设置为"全部" 时出现此错误消息.当我将它设置为我自己的源(事实上,预计会找到包)时,会出现另一个错误:

Install-Package : **There are multiple root elements. Line 42, position 2.**
At line:1 char:16
+ install-package <<<<  dfct.shell.core.contracts -Version "1.0.8.0"
+ CategoryInfo          : NotSpecified: (:) [Install-Package], XmlException
+  FullyQualifiedErrorId : NuGetCmdletUnhandledException,NuGet.PowerShell.Commands.InstallPackageCommand
Run Code Online (Sandbox Code Playgroud)

第42行有多个根元素?在什么档案?这是为什么?我认为服务器端存在问题,但无法弄清楚它是什么.

Dmi*_*tov 5

原来两者共存MyPackage.1.0.9.0.nupkgMyPackage.1.0.9.0.symbols.nupkg导致NuGet崩溃.NuGet使用OData作为传输,在OData深处,它无法序列化/反序列化两个包,抱怨"多个根节点".所以我只是删除-symbolsnuget pack命令行从而禁用调试包的生成,而现在这一切工作正常.