J'utilise Entity Framework pour accéder à ma base de données MySQL. Le modèle a été généré en utilisant EDMGEN2 et tout fonctionne très bien. Je peux faire tout mon bien de requête linq-to-entity ...MySql et Entity framework donne aléatoirement Le schéma spécifié n'est pas une erreur valide
... jusqu'à ce qu'une quantité indéterminée de temps passe et j'obtiens "Le ProviderManifestToken '5' est différent de '5.1' qui a été rencontré plus tôt" erreur . Pourquoi rencontre-t-il un '5' pour commencer quand j'ai seulement spécifié '5.1'? Le seul moyen d'arrêter l'erreur est de reuploader au fichier edmx (qui n'a pas du tout changé), en écrasant le précédent. À ce stade, l'application va heureusement fournir des données aux utilisateurs jusqu'à ce que l'erreur survienne peut-être quelques heures plus tard, parfois quelques jours plus tard et je vais devoir recommencer à courir après ma queue.
J'ai essayé de changer le ProviderManifestToken = "5.1" en "MySQL", "6", "5" et la même situation se produira: fonctionne pendant un moment puis l'erreur. En prime, je n'ai que ce fichier ONE edmx dans l'application webbase de vb.net, alors qu'est-ce que ça peut dérouter?
les premières lignes de mon fichier edmx ressemble:
<edmx:Edmx Version="1.0" xmlns:edmx="http://schemas.microsoft.com/ado/2007/06/edmx">
<edmx:Runtime>
<edmx:StorageModels>
<Schema Namespace="v2Model.Store" Alias="Self" Provider="MySql.Data.MySqlClient" ProviderManifestToken="5.1" xmlns:store="http://schemas.microsoft.com/ado/2007/12/edm/EntityStoreSchemaGenerator" xmlns="http://schemas.microsoft.com/ado/2006/04/edm/ssdl">
<EntityContainer Name="v2ModelStoreContainer">.....
et ma chaîne de connexion à web.config ressemble:
<add name="v2Entities" connectionString="metadata=res://*;provider=MySql.Data.MySqlClient;provider connection string="server=localhost;database=v2;uid=username;pwd=password"" providerName="System.Data.EntityClient" />
Cela est en cours depuis le dernier mois maintenant et je ne peux pas comprendre la source du problème pour la vie de moi! Toutes les suggestions du tout seront appréciés
installation est la suivante:
Windows Server 2003 MySQL v 5.1.38 (également essayé 5.1.36) connecteur/NET 6.1.1.0 (essayé aussi 6.0.4.0)
L'erreur est la suivante:
schéma spécifié est incorrect. Erreurs: MySql.Data.Entity.Properties.SchemaDefinition-5.1.ssdl (4,9): erreur 0169: tous les artefacts SSDL doivent cibler le même fournisseur. Le ProviderManifestToken '5' est différent de '5.1' rencontré plus tôt.
MySql.Data.Entity.Properties.SchemaDefinition-5.0.ssdl (4,9): erreur 0169: Tous les artefacts SSDL doivent cibler le même fournisseur. Le ProviderManifestToken '5' est différent de '5.1' rencontré plus tôt.
MySql.Data.Entity.Properties.SchemaDefinition-5.0.ssdl (7,4): erreur 0019: Le nom EntityContainer doit être unique. Un EntityContainer avec le nom 'Schema' est déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-5.0.ssdl (336,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.Table' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-5.0.ssdl (348,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.TableColumn' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-5.0.ssdl (374,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.View' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-5.0.ssdl (386,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.ViewColumn' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-5.0.ssdl (412,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.Function' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-5.0.ssdl (437,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.Procedure' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-5.0.ssdl (447,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.Parameter' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-5.0.ssdl (471,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.Constraint' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-5.0.ssdl (483,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.CheckConstraint' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-5.0.ssdl (491,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.ConstraintColumn' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-5.0.ssdl (500,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.ForeignKeyConstraint' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-5.0.ssdl (509,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.ForeignKey' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-5.0.ssdl (520,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.ViewConstraint' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-5.0.ssdl (535,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.TableTableConstraint' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-5.0.ssdl (548,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.ConstraintConstraintColumn' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-5.0.ssdl (561,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.ConstraintForeignKey' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-5.0.ssdl (574,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.FromForeignKeyColumn' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-5.0.ssdl (587,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.ToForeignKeyColumn' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-5.0.ssdl (600,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.TableTableColumn' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-5.0.ssdl (613,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.ViewViewColumn' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-5.0.ssdl (626,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.FunctionFunctionParameter' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-5.0.ssdl (639,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.ProcedureProcedureParameter' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-5.0.ssdl (652,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.ViewViewConstraint' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-5.0.ssdl (665,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.ViewConstraintConstraintColumn' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-5.0.ssdl (678,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.ViewConstraintForeignKey' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-5.0.ssdl (691,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.FromForeignKeyViewColumn' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-5.0.ssdl (704,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.ToForeignKeyViewColumn' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-6.0.ssdl (4,9): erreur 0169: Tous les artefacts SSDL doivent cibler le même fournisseur. Le ProviderManifestToken '5' est différent de '5.1' rencontré plus tôt.
MySql.Data.Entity.Properties.SchemaDefinition-6.0.ssdl (7,4): erreur 0019: Le nom EntityContainer doit être unique. Un EntityContainer avec le nom 'Schema' est déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-6.0.ssdl (391,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.Table' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-6.0.ssdl (403,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.TableColumn' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-6.0.ssdl (429,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.View' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-6.0.ssdl (441,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.ViewColumn' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-6.0.ssdl (467,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.Function' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-6.0.ssdl (492,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.Procedure' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-6.0.ssdl (502,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Saisissez le nom 'MySqlClient.Le paramètre 'était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-6.0.ssdl (526,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.Constraint' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-6.0.ssdl (538,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.CheckConstraint' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-6.0.ssdl (546,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.ConstraintColumn' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-6.0.ssdl (555,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.ForeignKeyConstraint' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-6.0.ssdl (564,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.ForeignKey' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-6.0.ssdl (575,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.ViewConstraint' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-6.0.ssdl (590,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.TableTableConstraint' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-6.0.ssdl (603,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.ConstraintConstraintColumn' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-6.0.ssdl (616,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.ConstraintForeignKey' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-6.0.ssdl (629,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.FromForeignKeyColumn' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-6.0.ssdl (642,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.ToForeignKeyColumn' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-6.0.ssdl (655,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.TableTableColumn' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-6.0.ssdl (668,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.ViewViewColumn' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-6.0.ssdl (681,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.FunctionFunctionParameter' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-6.0.ssdl (694,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.ProcedureProcedureParameter' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-6.0.ssdl (707,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.ViewViewConstraint' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-6.0.ssdl (720,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.ViewConstraintConstraintColumn' était déjà défini. MySQL.Data.Entity.Properties.SchemaDefinition-6.0.ssdl (733,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.ViewConstraintForeignKey' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-6.0.ssdl (746,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.FromForeignKeyViewColumn' était déjà défini.
MySql.Data.Entity.Properties.SchemaDefinition-6.0.ssdl (759,4): erreur 0019: Chaque nom de type dans un schéma doit être unique. Le nom de type 'MySqlClient.ToForeignKeyViewColumn' était déjà défini.
J'ai des problèmes similaires. Pouvez-vous dire à quoi se rapporte MyApplication.Entities? –
Je suppose que "MyApplication" est l'espace de noms du modèle (fichier .edmx). "Entités" est le nom de la classe. – Dasun