当前运行时目标框架与项目不兼容

Bla*_*ord 13 entity-framework-core asp.net-core

我正在尝试在添加Entity Framework 7到我的Asp.Net 5项目后执行初始迁移.我正在关注此文档.

在我的project.json指定中:

  "commands": {
    "web": "Microsoft.AspNet.Server.Kestrel",
    "ef": "EntityFramework.Commands"
  },

  "frameworks": {
    "dnxcore50": { }
  }
Run Code Online (Sandbox Code Playgroud)

我试图通过命令提示符在项目目录中执行以下命令:

dnx ef migrations add MyFirstMigration
Run Code Online (Sandbox Code Playgroud)

但是我收到以下错误:

System.InvalidOperationException:当前运行时目标框架与ProjectName不兼容.当前运行时目标框架:'DNX,Version = v 4.5.1(dnx451)请确保运行时与project.json中指定的框架匹配.

奇怪的是,我project.json绝对是针对性的dnxcore50.我也签到了global.json:

{
  "projects": [ "src", "test" ],
  "sdk": {
    "version": "1.0.0-beta8",
    "architecture": "x86",
    "runtime": "coreclr"
  }
}
Run Code Online (Sandbox Code Playgroud)

我的包依赖项都引用了beta8:

  "dependencies": {
    "EntityFramework.Commands": "7.0.0-beta8",
    "EntityFramework.Core": "7.0.0-beta8",
    "EntityFramework.SqlServer": "7.0.0-beta8",
    "Hl7.Fhir.DSTU2": "0.90.2",
    "Microsoft.AspNet.Authentication.Cookies": "1.0.0-beta8",
    "Microsoft.AspNet.Authentication.OpenIdConnect": "1.0.0-beta8",
    "Microsoft.AspNet.Diagnostics": "1.0.0-beta8",
    "Microsoft.AspNet.IISPlatformHandler": "1.0.0-beta8",
    "Microsoft.AspNet.Mvc": "6.0.0-beta8",
    "Microsoft.AspNet.Mvc.TagHelpers": "6.0.0-beta8",
    "Microsoft.AspNet.Server.Kestrel": "1.0.0-beta8",
    "Microsoft.AspNet.StaticFiles": "1.0.0-beta8",
    "Microsoft.AspNet.Tooling.Razor": "1.0.0-beta8",
    "Microsoft.Dnx.Runtime": "1.0.0-beta8",
    "Microsoft.Framework.Configuration.Json": "1.0.0-beta8",
    "Microsoft.Framework.Configuration.UserSecrets": "1.0.0-beta8",
    "Microsoft.Framework.Logging": "1.0.0-beta8",
    "Microsoft.Framework.Logging.Console": "1.0.0-beta8",
    "Microsoft.Framework.Logging.Debug": "1.0.0-beta8",
    "Microsoft.VisualStudio.Web.BrowserLink.Loader": "14.0.0-beta8"
  }
Run Code Online (Sandbox Code Playgroud)

nat*_*ter 17

您需要添加dnx451到项目支持的框架,或切换到.NET Core版本.

  "frameworks": {
    "dnxcore50": { },
    "dnx451": { }
  }
Run Code Online (Sandbox Code Playgroud)

或运行:

dnvm install latest -r coreclr

要么

dnvm use default -r coreclr