Maison  >  Article  >  base de données  >  Comment résoudre l'erreur « Impossible de récupérer les métadonnées » dans MVC4 avec Entity Framework et MySQL ?

Comment résoudre l'erreur « Impossible de récupérer les métadonnées » dans MVC4 avec Entity Framework et MySQL ?

Patricia Arquette
Patricia Arquetteoriginal
2024-10-28 02:35:02701parcourir

 How to Resolve

Impossible de récupérer les métadonnées dans MVC4 avec Entity Framework et MySql

Dans le but d'établir un modèle de données pour MVC4 à l'aide d'Entity Framework 4.4 avec MySql, les utilisateurs peuvent rencontrer une erreur liée à la récupération des métadonnées. Ce message d'erreur se lit généralement :

Unable to retrieve metadata for BTD.Data.Product using the same
DbCompiledModel to create context against different types of database
servers is not supported. Instead, create a separate DbCompiledModel
for each type of server being used.

Raisons de l'erreur

Ce problème peut survenir en raison de l'incapacité de l'échafaudage du contrôleur MVC4 à reconnaître avec précision les chaînes de connexion MySql lorsque générer du code CRUD Entity Framework (EF).

Solution

Pour résoudre l'erreur, suivez ces étapes :

  1. Modifier la chaîne de connexion :
    Lors de la génération du code EF CRUD, modifiez la chaîne de connexion pour qu'elle pointe vers une base de données Microsoft SQL Server (par exemple, en utilisant System.Data.SqlClient).
  2. Échafaudez la Code :
    Ajoutez le contrôleur et affichez l'échafaudage tout en utilisant la chaîne de connexion modifiée.
  3. Rétablissez la chaîne de connexion :
    Une fois l'échafaudage terminé, rétablissez la connexion chaîne à la configuration MySql d'origine à l'aide de MySql.Data.MySqlClient.

Notes supplémentaires

  • Il a été observé que le passage à une base de données SQL Server , l'échafaudage du code et le retour à la chaîne de connexion MySql peuvent résoudre le problème.
  • Assurez-vous que votre version de MySql est prise en charge et que le fournisseur .NET approprié est installé.
  • Vérifiez la structure de la table de base de données. et assurez-vous qu'il s'aligne sur le modèle de données EF.
  • Envisagez d'utiliser l'[approche Code-First Migration](https://docs.microsoft.com/en-us/ef/core/get-started/using -mvc/migrations) avec EF.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn