0

我创建了几个 MyGet 包,并将它们推送到我的提要中。我已经成功地在我的项目中引用了这些包。我可以看到 NuGet 包管理器中列出的包,并且可以在 Users[用户名].nuget\packages 中看到它们下载。事实上,当我删除了 packages 文件夹中的那些文件夹并在我的解决方案中恢复包时,我看到这些文件夹又被下载了。当然,这些引用也列在我的 project.json 文件中。

到目前为止,一切看起来都很好。

然后我尝试从其中一个包中引用一个类,而 Visual Studio 根本找不到它。它只是给了我标准的“类型或命名空间......不存在”错误。此外,我尝试在对象资源管理器中拉出包以查看是否可以查看类,但它无法在任何地方找到列出的包,而它可以看到所有其他已拉下的 Nuget 包。

我什至去我的 MyGet 提要下载一个包,并确保列出了所有的类和接口,而且,果然,它们都在那里。

回顾一下——我的项目参考看起来不错。包的内部看起来不错。VS 正在将包下载到 Users[user].nuget\packages。但是,我完全无法在我的代码中使用这些包。

我不知道它是否有所作为,但这是 VS 2015,我使用的是 .NET Core。

我该如何解决这个问题?

解决方案资源管理器显示 3 个包无法展开以了解更多详细信息。

4

1 回答 1

1

请在 project.json 文件中添加以下脚本代码来打包 .NET Core 包。

"scripts": {
"postcompile": [
  "dotnet pack --no-build --configuration %compile:Configuration%"
  ]
}

编译您的 .NET Core 项目后,它将在 \bin\debug 文件中生成 .nupck 文件。然后请将此包上传到您的 NuGet 源并将其安装到您的项目中。

如果我用你使用 nuspec 文件的步骤打包 .NET Core 包,我会遇到同样的问题。.NET Core 项目与普通项目不同,普通项目是带有 project.json 的管理器包。所以请用 project.josn 文件打包你的 .NET Core 包。

于 2016-11-01T04:59:12.510 回答