ASP.NET 5(vNext)Web项目:库冲突从beta4升级到beta6

jlt*_*rem 6 c# asp.net asp.net-core

我用DNVM升级了dnvm upgrade -Unstable.运行dnvm list显示此活动:1.0.0-beta6-12120.

我使用ASP.NET 5预览模板为网站创建了一个新项目,并验证它将构建.

我将project.json更改为引用beta6:

"dependencies": {
  "EntityFramework.SqlServer": "7.0.0-beta6",
  "EntityFramework.Commands": "7.0.0-beta6",
  "Microsoft.AspNet.Mvc": "6.0.0-beta6",
  "Microsoft.AspNet.Mvc.TagHelpers": "6.0.0-beta6",
  "Microsoft.AspNet.Authentication.Cookies": "1.0.0-beta6",
  "Microsoft.AspNet.Authentication.Facebook": "1.0.0-beta6",
  "Microsoft.AspNet.Authentication.Google": "1.0.0-beta6",
  "Microsoft.AspNet.Authentication.MicrosoftAccount": "1.0.0-beta6",
  "Microsoft.AspNet.Authentication.Twitter": "1.0.0-beta6",
  "Microsoft.AspNet.Diagnostics": "1.0.0-beta6",
  "Microsoft.AspNet.Diagnostics.Entity": "7.0.0-beta6",
  "Microsoft.AspNet.Identity.EntityFramework": "3.0.0-beta6",
  "Microsoft.AspNet.Server.IIS": "1.0.0-beta6",
  "Microsoft.AspNet.Server.WebListener": "1.0.0-beta6",
  "Microsoft.AspNet.StaticFiles": "1.0.0-beta6",
  "Microsoft.AspNet.Tooling.Razor": "1.0.0-beta6",
  "Microsoft.Framework.Configuration.Json": "1.0.0-beta6",
  "Microsoft.Framework.Configuration.UserSecrets": "1.0.0-beta6",
  "Microsoft.Framework.CodeGenerators.Mvc": "1.0.0-beta6",
  "Microsoft.Framework.Logging": "1.0.0-beta6",
  "Microsoft.Framework.Logging.Console": "1.0.0-beta6"
}
Run Code Online (Sandbox Code Playgroud)

但是构建因运行时库冲突而失败:

1>MSBUILD : DNX 4.5.1 error CS0433: The type 'AssemblyFileVersionAttribute' exists in both 'mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' and 'System.Runtime, Version=4.0.20.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' 1>MSBUILD : DNX 4.5.1 error CS0433: The type 'AssemblyVersionAttribute' exists in both 'mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' and 'System.Runtime, Version=4.0.20.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' 1>MSBUILD : DNX 4.5.1 error CS0433: The type 'AssemblyInformationalVersionAttribute' exists in both 'mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' and 'System.Runtime, Version=4.0.20.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' 1>MSBUILD : DNX 4.5.1 error CS0518: Predefined type 'System.String' is not defined or imported 1>MSBUILD : DNX 4.5.1 error CS0518: Predefined type 'System.String' is not defined or imported 1>MSBUILD : DNX 4.5.1 error CS0518: Predefined type 'System.String' is not defined or imported 1>MSBUILD : DNX 4.5.1 error CS0518: Predefined type 'System.Void' is not defined or imported 1>MSBUILD : DNX 4.5.1 error CS0518: Predefined type 'System.Void' is not defined or imported 1>MSBUILD : DNX 4.5.1 error CS0518: Predefined type 'System.Boolean' is not defined or imported

怎么解决这个问题?

Sha*_*tin 3

β6-*

在您的project.json 文件中,尝试使用beta6-*而不是仅仅使用beta6. 这意味着它将引用它的最新版本。

~.dnx\运行时

检查 .txt 中有哪些运行时目录C:\Users\MyUser\.dnx\runtimes。我的包括以下内容:

dnx-clr-win-x86.1.0.0-beta6          <-- I made this one via a rename.
dnx-clr-win-x86.1.0.0-beta6-12085
dnx-clr-win-x86.1.0.0-beta6-12120
Run Code Online (Sandbox Code Playgroud)

在我的global.json文件(与 位于同一目录中)中*.sln,我确保引用如下运行时之一:

{
    "projects": [ "src", "test" ],
    "sdk": {
        "version": "1.0.0-beta6-12120"
    }
}
Run Code Online (Sandbox Code Playgroud)