Impossible d'exécuter la migration sur Entity Framework 7 beta4 dans le package de bibliothèque de classes

c# entity-framework-core

Question

Je ne parviens pas à exécuter la commande de migration dans un package de bibliothèque de classe. Ma version de dnvm est (de global.json):

"sdk": {
        "version": "1.0.0-beta5-12021"
    }

J'importe ceci dans mon projet JSON.

"dependencies": {
   "EntityFramework.Commands": "7.0.0-beta4",
   "EntityFramework.SqlServer": "7.0.0-beta4",
   "Microsoft.CSharp": "4.0.0-beta-22816",
   "System.Collections": "4.0.10-beta-22816",
   "System.Linq": "4.0.0-beta-22816",
   "System.Threading": "4.0.10-beta-22816",
   "EntityFramework.Core": "7.0.0-beta4"
},
"commands": {
   "ef": "EntityFramework.Commands"
}

Ma méthode OnConfiguring dans ma classe héritée DbContext est

protected override void OnConfiguring(DbContextOptionsBuilder    optionsBuilder)
    {
        optionsBuilder.UseSqlServer(@"Server=(localdb)\ProjectsV12;Database=Ef7;Trusted_Connection=True;");
    }

Mais quand je lance dnx . ef migration add initial J'obtiens le résultat suivant:

System.ArgumentNullException: Value cannot be null.
Parameter name: appEnv
   at Microsoft.Data.Entity.Utilities.Check.NotNull[T](T value, String parameterName)
   at Microsoft.Data.Entity.Commands.Program..ctor(IServiceProvider serviceProvider, IApplicationEnvironment appEnv, ILibraryManager libraryManager)

J'essaie de comprendre cela depuis un moment maintenant, alors toute aide est appréciée. Merci.

Réponse acceptée

Je viens de trouver un moyen de contourner ce problème. Cela semble se produire avec la dernière version du coreclr. Au lieu d'appeler

dnvm install -r coreclr latest

J'ai appelé le suivant pour passer de la dernière version à la version beta4.

dnvm use 1.0.0-beta4 -r coreclr

Lorsque j'appelle "dnx. Ef", l'outil de migration Entity Framework démarre.



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