1

我创建了一个.NET Standard项目,在其中安装4.4.4System.ServiceModel.Httpnuget 包的版本。这个包还包括 dll System.ServiceModel.Primitives...我添加图像:

在此处输入图像描述

我已经使用命令从我的项目中创建了一个 nuget 包

.\nuget.exe pack MyProjectFile.csproj -Build -ExcludeEmptyDirectories -IncludeReferencedProjects -OutputDirectory  MyOutputDir

现在我必须在另一个解决方案中安装这个包,在.NET Framework项目中。但是由于某种原因,当我启动项目时,我收到了这个错误:

无法加载文件或程序集“System.ServiceModel.Primitives,Version=4.2.0.3,Culture=neutral,PublicKeyToken=b03f5f7f11d50a3a”或其依赖项之一。

4.2.0.3dll的版本System.ServiceModel.Primitives在包版本里面4.4.4

我以这种方式编辑了我的 .NET Standard 项目文件:

<PackageReference Include="System.ServiceModel.Primitives" Version="4.4.4" />
<PackageReference Include="System.ServiceModel.Http" Version="4.4.4" />

但是当我在我的 .NET 项目中安装包时,我仍然收到该错误。我的包裹中没有包含任何外部包裹……我错过了什么?

谢谢

编辑

我还期望,当我安装我的 nuget 包时,会出现一个窗口并告诉我“您还需要安装包 A 和包 B。继续与否?”。反而什么都没有出现......

4

1 回答 1

0

如果您使用的是 .net 标准项目,则可以使用 dotnet CLI 而不是 nuget.exe。我总是发现它更干净,过程要少得多。您可以在 dotnet CLI 中使用类似的东西

dotnet pack -c release -o MyOutputDir

这里输出文件夹是可选的,默认情况下配置是“调试”。我已经将它用于几个 nuget 并且我从来没有遇到过 nuget 引用的问题。

于 2018-12-06T07:49:07.810 回答