【发布时间】:2015-08-14 16:20:58
【问题描述】:
我已经使用 VS 2015 和 ASP.NET 5 开始了一组新项目。
我在引用某些 nuget 包时遇到问题。现在我在新的 AspNet 5 类库中引用 Autofac 时遇到问题。
在 project.json 中添加 "Autofac": "4.0.0-beta6-110" 只会在引用树中给我一个黄色警告三角形,并显示一条消息“错误 - 请参阅错误列表”。
查看输出没有任何错误。 构建失败,项目给我以下错误:
错误无法解析依赖 Autofac >= 4.0.0-beta6-110。
值得知道的是,我已经使用不同版本的 Autofac 进行了测试,因此可能会导致一些包缓存中断。
从一个 AspNet 5 Web 项目中,我还引用了 Autofac,这似乎有效,但在参考列表中,Autofac 显示为普通参考(不是 nuget),显示 Autofac 1.0.0 不正确。
是否有清除 dnx 包缓存的方法?我试过删除文件夹 .dnx/packages 没有任何结果。
我看不出我在项目中做错了什么,所以一定有其他原因。
{
"version": "1.0.0-*",
"description": "ProjectName Class Library",
"authors": [ "author" ],
"tags": [ "" ],
"projectUrl": "",
"licenseUrl": "",
"dependencies": {
"System.Collections": "4.0.10-beta-23019",
"System.Linq": "4.0.0-beta-23019",
"System.Threading": "4.0.10-beta-23019",
"System.Runtime": "4.0.10-beta-23019",
"Microsoft.CSharp": "4.0.0-beta-23019",
"Autofac": "4.0.0-beta6-110"
},
"frameworks": {
"dotnet": { }
}
}
这是我在解决方案资源管理器中遇到的错误:
这就是它在 Web 项目中的呈现方式(即使它使用 Autofac 4.0)
【问题讨论】:
-
尝试清除
.dnx/packages(正如你已经提到的)和project.lock.json文件,然后再次点击恢复。 -
谢谢,试过了,但也没有用:-(
-
我想知道 Autofac 1.0.0 是从哪里来的,它甚至在 NuGet 上都不可用。你的网络应用程序的
project.json是什么样的? -
我发现我的 global.json 至少是问题的一部分。我之前从 asp.net 5 中引用了一个 .csproj 项目。该 .csproj 项目已被包装,并且在 wrap 文件夹内有对旧 Autofac 参考的引用。我删除了 global.json 和 wrap 文件夹,现在 Autofac 1.0.0 问题消失了。不过类库还是有问题
-
啊,你解决了。针对 dnxcore50 有效。谢谢!
标签: visual-studio-2015 asp.net-core