Le cadre cible d'exécution actuel n'est pas compatible avec le projet

asp.net-core entity-framework-core

Question

J'essaie d'effectuer une migration initiale après avoir ajouté Entity Framework 7 à mon projet Asp.Net 5. Je suis cette documentation .

Dans mon project.json j'ai spécifié:

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

  "frameworks": {
    "dnxcore50": { }
  }

J'essaie d'exécuter la commande suivante dans le répertoire du projet via une invite de commande:

dnx ef migrations add MyFirstMigration

Mais j'obtiens l'erreur suivante:

System.InvalidOperationException: L'infrastructure cible d'exécution actuelle n'est pas compatible avec ProjectName. Infrastructure cible d'exécution actuelle: 'DNX, version = v 4.5.1 (dnx451) Assurez-vous que le moteur d'exécution correspond à une structure spécifiée dans project.json.

La chose étrange est que mon project.json vise certainement dnxcore50 . J'ai aussi vérifié dans global.json :

{
  "projects": [ "src", "test" ],
  "sdk": {
    "version": "1.0.0-beta8",
    "architecture": "x86",
    "runtime": "coreclr"
  }
}

Et mes dépendances de paquets font toutes référence à la 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"
  }

Réponse acceptée

Vous devez ajouter dnx451 aux dnx451 en dnx451 de votre projet ou passer à une version .NET Core.

  "frameworks": {
    "dnxcore50": { },
    "dnx451": { }
  }

Ou courir:

dnvm install latest -r coreclr

ou

dnvm use default -r coreclr




Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Est-ce KB légal? Oui, apprenez pourquoi
Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Est-ce KB légal? Oui, apprenez pourquoi