DNX:当前的运行时目标框架与项目不兼容。

18

我遇到了以下的运行时错误:

[InvalidOperationException: The current runtime target framework is not compatible with 'TestDeployProject'.

Current runtime Target Framework: 'DNX,Version=v4.5 (dnx45)'
  Type: CLR
  Architecture: x86
  Version: 1.0.0-beta6-12256

Please make sure the runtime matches a framework specified in project.json]

项目设置 DNX SDK 版本:

解决方案 DNX SDK 版本

project.json 目标框架:

"frameworks": {
  "dnx46": { }
},

DNVM列表:

Active Version     Runtime Architecture OperatingSystem Alias
------ -------     ------- ------------ --------------- -----
       1.0.0-beta6 clr     x64          win
  *    1.0.0-beta6 clr     x86          win             latest
       1.0.0-beta6 coreclr x64          win             default

可能是什么问题?

编辑:

我尝试使用dnx451,如这篇文章中所指定的。但问题依旧存在。环境变量也没有起到帮助作用。


如果我改成 dnx451,问题仍然存在。我已经尝试按建议设置了 DNX_IIS_RUNTIME_FRAMEWORK 环境变量。 - Dave New
1个回答

15

查看您的 project.json 文件中的 dependencies 部分。如果您的 ASP.NET 包不是在 beta6 版本,则会出现此错误。

"dependencies": { "Microsoft.AspNet.Mvc": "6.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.Mvc.Core": "6.0.0-beta6", "Microsoft.AspNet.Cors": "1.0.0-beta6", "Microsoft.Framework.Configuration": "1.0.0-beta6", "Microsoft.Framework.Configuration.Json": "1.0.0-*", ...

昨天我将两个项目从 beta4 升级到 beta6。其中一个意外地将其依赖项保留在 beta4,但使用了设置为 beta6 的 global.json sdk,并且在运行时出现了这个确切的错误。


这就是问题所在。谢谢 :) - Dave New
我在运行dnvm升级后使用了“文件-新建项目”。当我将所有的“beta5”替换为“beta6”时,在迁移文件夹中出现了75个构建错误。你遇到过这种情况吗? - AlignedDev
1
@Aligned 随着ASP.NET5 MVC6的发展,其许多API发生了变化。从一个beta版本迁移至下一个版本需要解决这些问题。您可以在此处找到破坏性更改列表 - jltrem

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接