C# 无法将nuget软件包添加到通用便携库

C# 无法将nuget软件包添加到通用便携库,c#,windows-store-apps,nuget,nuget-package,C#,Windows Store Apps,Nuget,Nuget Package,我试图使用nuget软件包管理器将几个软件包添加到我的universal portable library中,但始终收到以下错误消息: 将“Package X.X.X”添加到MyLibrary。 无法安装程序包“package X.X.X”。 您正在尝试将此软件包安装到中 一个以“portable-win81+wpa81”为目标的项目,但软件包不支持 不包含任何不可用的程序集引用或内容文件 与该框架兼容。有关更多信息,请联系 包作者 我确实理解此错误消息试图告诉我的内容 我不明白的是: 我尝试将

我试图使用nuget软件包管理器将几个软件包添加到我的universal portable library中,但始终收到以下错误消息:

将“Package X.X.X”添加到MyLibrary。 无法安装程序包“package X.X.X”。 您正在尝试将此软件包安装到中 一个以“portable-win81+wpa81”为目标的项目,但软件包不支持 不包含任何不可用的程序集引用或内容文件 与该框架兼容。有关更多信息,请联系 包作者

我确实理解此错误消息试图告诉我的内容

我不明白的是:

我尝试将相同的nuget软件包与软件包管理器一起添加到我的通用应用程序中,这起作用,表明该库与通用应用程序兼容

在我的通用便携库中我手动添加了对nuget包dll的引用,这同样有效。因此,我可以手动添加引用,但不能使用PackageManager控制台

为什么我不能将带有nuget package manager的nuget软件包添加到我的通用便携库中

其他信息:

我试用过的软件包是
诺基亚图像SDK
。该问题可以通过以下方式轻松重现:

  • 创建通用应用程序
  • 创建类库(通用应用程序的可移植)
  • 将软件包添加到universal app(此功能正常)
  • 将包添加到库(不工作)

  • 该包包含哪些目标框架?@MattWard如何从nupkg获取该信息?该.nupkg是一个zip文件,因此您可以将其重命名为.zip并打开它。框架位于.zip中的lib文件夹中。另一种方法是使用NuGet包资源管理器-如果NuGet包只针对.NET 3.5,则NuGet将不允许您将其安装到PCL项目中。NuGet软件包需要包含PCL才能将其安装到PCL项目中。奇怪的是,您不应该能够将其安装到通用应用程序中。通用应用程序应以与.NET 3.5不兼容的WindowsPhoneApp为目标。但是,我没有VS 2013来确认通用应用程序的兼容性。没有什么可以阻止您直接引用程序集。我不相信Visual Studio会阻止你。您可能会在编译时收到警告-不确定。当您尝试在Windows 8 Phone或Windows 8上运行程序集时,会出现问题,因为程序集可能使用Windows 8不支持的.NET framework的一部分。