Erreur de migration Entity Framework 4.3
Je viens d'installer EF 4.3-beta1 pour les migrations de bonté, et je ne peux pas le faire fonctionner. L'erreur que je reçois:
PM> Update-Database -Verbose
Using NuGet project 'Project.Domain'.
Using StartUp project 'ProjectWebSite'.
System.InvalidOperationException: No migrations configuration type was found in the assembly 'Project.Domain'.
at System.Data.Entity.Migrations.Design.ToolingFacade.BaseRunner.FindConfiguration()
at System.Data.Entity.Migrations.Design.ToolingFacade.BaseRunner.GetMigrator()
at System.Data.Entity.Migrations.Design.ToolingFacade.UpdateRunner.RunCore()
at System.Data.Entity.Migrations.Design.ToolingFacade.BaseRunner.Run()
No migrations configuration type was found in the assembly 'Project.Domain'.
J'ai ajouté une nouvelle colonne à 2 EF classes:
public class MasterInstance
{
public int MasterInstanceId { get; set; }
[Required] public string HostName { get; set; }
[Required] public string Name { get; set; } /* <-- THIS IS NEW */
[Required] public string ConnectionString { get; set; }
public virtual ICollection<MasterInstanceLocation> MasterInstanceLocations { get; set; }
}
Et mon DbContext ressemble à ceci:
public class ProjectDontext: DbContext, IProjectContext
{
public IDbSet<Installer> Installers { get; set; }
public IDbSet<MasterInstance> MasterInstances { get; set; }
public IDbSet<MasterInstanceLocation> MasterInstanceLocations { get; set; }
}
Des idées? Mon EF classes & le contexte de vivre dans un ensemble distinct (du Projet.De domaine). J'ai essayé de lancer la mise à jour de la base de données dans le contexte du site web principal et le projet de domaine, et j'obtiens la même erreur.
-- MODIFIER --
Solution trouvée. Il s'avère, que vous avez besoin pour permettre la migration de votre projet. Vous pouvez le faire en cours d'exécution Enable-Migrations
dans la console NuGet (assurez-vous que vous avez le droit de projets sélectionnés - pour moi, c'était le projet.projet de domaine).
Cette procédure pas à pas fournit plus d'informations
source d'informationauteur Matt Roberts
Vous devez vous connecter pour publier un commentaire.
Solution trouvée. Il s'avère, que vous avez besoin pour permettre la migration de votre projet. Vous pouvez le faire en cours d'exécution
Enable-Migrations
dans la console NuGet (assurez-vous que vous avez le droit de projets sélectionnés - pour moi, c'était le projet.projet de domaine).Cette procédure pas à pas fournit plus d'informations
Parfois, même si vous avez activé la migration,ce problème peut se produire. Cela signifie que le fichier de configuration a été supprimé. Dans ce cas, vous pouvez exécuter activer-migrations-Force dans le PM de la console. Paramètre Force est de remplacer la migration fichier de configuration.
Si vous avez déjà activé migrations et juste commencé à voir cette erreur après quelques mises à jour de windows, assurez-vous d'utiliser la même version de l'Entity Framework dans tous les projets à l'aide du Gestionnaire de Package NuGet.
Récentes mises à jour de windows peuvent avoir installé une version plus récente de l'Entity Framework dans votre projet actif.
De fond: Environ 16 mars 2016, j'ai commencé à faire le "pas de migrations de configuration de type" erreur lorsque vous essayez d'ajouter des migrations à un projet où j'avais déjà activé les migrations et l'avait fait avec succès migrations avant.
J'ai remarqué qu'environ 10 Mars, une nouvelle version stable de Entity Framework 6 avait été libéré.
Si j'ai précisé le -ContextTypeName paramètre dans l'activation de-migrations de commande, j'ai reçu un message d'erreur indiquant les migrations étaient déjà activés.
Une autre erreur, j'ai eu comme j'ai été dépannage indiqué que le type de Configuration n'a pas été l'héritage du Système.Les données.De l'entité.ModelConfiguration.EntityTypeConfiguration, même si elle a été.
Qui m'a conduit à en croire les différentes versions de l'Entité Cadre ont été contradictoires.
Résolution:
1) Outils -> Gestionnaire de Package Nuget -> Gérer les Packages Nuget pour Solution
2) (Pas sûr si cette étape est nécessaire, mais..) j'ai mis à jour ma version du Gestionnaire de Package Nuget à la dernière version. Aussi, après avoir mis à jour ma version de Gestionnaire de Package Nuget, j'ai dû redémarrer Visual Studio à deux fois avant de le NuGet ligne de Commande devrait fonctionner correctement.
3) les Outils -> Gestionnaire de package Nuget -> Gérer les Packages Nuget pour Solution -> Rechercher les paquets Installés -> Type Entity Framework
un. Vous pouvez voir plus d'une version de l'Entity Framework.
b. Cliquez sur Gérer dans chaque version de l'Entity Framework et de s'assurer que vos projets sont à l'aide de la MÊME version de l'Entity Framework.
•Décochez la version de l'Entity Framework que vous ne l'utilisez pas et pour la version de Entity Framework que vous utilisez assurez-vous qu'il est cochée dans l'ensemble des projets qui en ont besoin.
De nouveau, comme indiqué dans l'étape 2, j'ai dû redémarrer visual studio deux fois pour obtenir le Gestionnaire de Package NuGet Console pour fonctionner correctement après la mise à jour de ma version du Gestionnaire de Package NuGet. J'ai eu une erreur lors du démarrage de la console la première fois, et "l'exception d'appel createinstancefrom avec 8 arguments n'a pas pu charger le fichier ou l'assembly EntityFramework" lors de l'exécution de l'activer-migrations de commande pour la deuxième fois.
De redémarrer visual studio semblait pour résoudre ces problèmes, cependant.