无法将Microsoft.AspNet.Mvc.Core添加到经典库

时间:2016-01-06 17:58:40

标签: c# asp.net-core nuget-package

我有一个基于.Net4.6的经典库,我想添加新mvc6的nuget-package。我尝试使用程序包管理器控制台执行此操作。错误如下:

Install-Package : Failed to add reference to 'System.Runtime'. Please make sure that it is in the Global Assembly Cache.
At line:1 char:1
+ Install-Package Microsoft.AspNet.Mvc.Core -Pre
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [Install-Package], Exception
    + FullyQualifiedErrorId : NuGetCmdletUnhandledException,NuGet.PackageManagement.PowerShellCmdlets.InstallPackageCommand

安装请求的System.Runtime没问题 - 它运行正常:

Install-Package System.Runtime -Pre

这是总结果:

PM> Install-Package Microsoft.AspNet.Mvc.Core -Pre
Attempting to gather dependencies information for package 'Microsoft.AspNet.Mvc.Core.6.0.0-rc1-final' with respect to project 'LibTest', targeting '.NETFramework,Version=v4.6'
Attempting to resolve dependencies for package 'Microsoft.AspNet.Mvc.Core.6.0.0-rc1-final' with DependencyBehavior 'Lowest'
Resolving actions to install package 'Microsoft.AspNet.Mvc.Core.6.0.0-rc1-final'
Resolved actions to install package 'Microsoft.AspNet.Mvc.Core.6.0.0-rc1-final'
Adding package 'System.Diagnostics.DiagnosticSource.4.0.0-beta-23516' to folder 'C:\Data\MyProject\SourceCode\packages'
Added package 'System.Diagnostics.DiagnosticSource.4.0.0-beta-23516' to folder 'C:\Data\MyProject\SourceCode\packages'
Added package 'System.Diagnostics.DiagnosticSource.4.0.0-beta-23516' to 'packages.config'
Successfully installed 'System.Diagnostics.DiagnosticSource 4.0.0-beta-23516' to LibTest
Adding package 'Microsoft.AspNet.Mvc.Core.6.0.0-rc1-final' to folder 'C:\Data\MyProject\SourceCode\packages'
Added package 'Microsoft.AspNet.Mvc.Core.6.0.0-rc1-final' to folder 'C:\Data\MyProject\SourceCode\packages'
Install failed. Rolling back...
Package 'Microsoft.AspNet.Mvc.Core.6.0.0-rc1-final : Microsoft.AspNet.Authorization [1.0.0-rc1-final, ), Microsoft.AspNet.FileProviders.Abstractions [1.0.0-rc1-final, ), Microsoft.AspNet.Hosting.Abstractions [1.0.0-rc1-final, ), Microsoft.AspNet.Mvc.Abstractions [6.0.0-rc1-final, ), Microsoft.Extensions.Logging.Abstractions [1.0.0-rc1-final, ), Microsoft.Extensions.MemoryPool [1.0.0-rc1-final, ), Microsoft.Extensions.PlatformAbstractions [1.0.0-rc1-final, ), System.Diagnostics.DiagnosticSource [4.0.0-beta-23516, )' does not exist in project 'LibTest'
Removed package 'System.Diagnostics.DiagnosticSource.4.0.0-beta-23516 : System.Diagnostics.Tracing [4.0.0, ), System.Runtime [4.0.0, ), System.Threading [4.0.0, )' from 'packages.config'
Removing package 'Microsoft.AspNet.Mvc.Core.6.0.0-rc1-final : Microsoft.AspNet.Authorization [1.0.0-rc1-final, ), Microsoft.AspNet.FileProviders.Abstractions [1.0.0-rc1-final, ), Microsoft.AspNet.Hosting.Abstractions [1.0.0-rc1-final, ), Microsoft.AspNet.Mvc.Abstractions [6.0.0-rc1-final, ), Microsoft.Extensions.Logging.Abstractions [1.0.0-rc1-final, ), Microsoft.Extensions.MemoryPool [1.0.0-rc1-final, ), Microsoft.Extensions.PlatformAbstractions [1.0.0-rc1-final, ), System.Diagnostics.DiagnosticSource [4.0.0-beta-23516, )' from folder 'C:\Data\MyProject\SourceCode\packages'
Removed package 'Microsoft.AspNet.Mvc.Core.6.0.0-rc1-final : Microsoft.AspNet.Authorization [1.0.0-rc1-final, ), Microsoft.AspNet.FileProviders.Abstractions [1.0.0-rc1-final, ), Microsoft.AspNet.Hosting.Abstractions [1.0.0-rc1-final, ), Microsoft.AspNet.Mvc.Abstractions [6.0.0-rc1-final, ), Microsoft.Extensions.Logging.Abstractions [1.0.0-rc1-final, ), Microsoft.Extensions.MemoryPool [1.0.0-rc1-final, ), Microsoft.Extensions.PlatformAbstractions [1.0.0-rc1-final, ), System.Diagnostics.DiagnosticSource [4.0.0-beta-23516, )' from folder 'C:\Data\MyProject\SourceCode\packages'
Removing package 'System.Diagnostics.DiagnosticSource.4.0.0-beta-23516 : System.Diagnostics.Tracing [4.0.0, ), System.Runtime [4.0.0, ), System.Threading [4.0.0, )' from folder 'C:\Data\MyProject\SourceCode\packages'
Removed package 'System.Diagnostics.DiagnosticSource.4.0.0-beta-23516 : System.Diagnostics.Tracing [4.0.0, ), System.Runtime [4.0.0, ), System.Threading [4.0.0, )' from folder 'C:\Data\MyProject\SourceCode\packages'
Install-Package : Failed to add reference to 'System.Runtime'. Please make sure that it is in the Global Assembly Cache.
At line:1 char:1
+ Install-Package Microsoft.AspNet.Mvc.Core -Pre
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [Install-Package], Exception
    + FullyQualifiedErrorId : NuGetCmdletUnhandledException,NuGet.PackageManagement.PowerShellCmdlets.InstallPackageCommand

PM> 

知道这可能是什么问题吗?

1 个答案:

答案 0 :(得分:1)

我不确定它到底是什么......但我改变了一些观点:

  • 我在net461上有我的项目。我把它们改回net451。这删除了aspnet5-application中引用的依赖关系图中的一些警告。
  • 我尝试添加Microsoft.AspNet.Mvc.Core后失败了,我手动更改了packages.config:我添加了这一行:

<package id="Microsoft.AspNet.Mvc.Core" version="6.0.0-rc1-final" targetFramework="net451" />

重新编译后,它似乎有效。