【问题标题】:MetadataException: Schema specified is not valid [duplicate]MetadataException:指定的架构无效[重复]
【发布时间】:2020-10-10 08:03:15
【问题描述】:

我一直在开发 Silverlight 应用程序。该应用程序应该由 Godaddy 托管。

应用程序连接到 MySql 作为它的后端数据库并使用实体框架。

应用程序在 Visual Studio 上正常运行。但是,当我将文件移动到 Godaddy 时,我开始遇到一些问题。应用程序开始抛出 MetadataException。

我使用 Fiddler 来跟踪问题。第一个 WCF 请求已正确终止,但后续请求失败,标头代码为 500。引发以下异常。

如果我尝试了许多解决方案,我将不胜感激帮助我解决这个问题。

  • 我已经完全删除了 EDMX 模型,并从配置文件中的连接字符串中删除了该条目。然后再次从数据库重新创建 edmx 文件。
  • 我已将 connectionString 中的元数据标记替换为“metadata="res://*/”,但没有成功

注意: 我在 Godaddy 上托管了另一个 Silverlight 应用程序,它使用 MS SQL SERVER,该应用程序可以正常工作。

[MetadataException: Schema specified is not valid. Errors: 
KaneeFollowUpModel.ssdl(2,93) : error 0175: The specified store provider cannot be found in the configuration, or is not valid.]
System.Data.Metadata.Edm.Loader.ThrowOnNonWarningErrors() +8566285
System.Data.Metadata.Edm.Loader.LoadItems(IEnumerable`1 xmlReaders, IEnumerable`1 sourceFilePaths) +181
System.Data.Metadata.Edm.StoreItemCollection.Init(IEnumerable`1 xmlReaders, IEnumerable`1 filePaths, Boolean throwOnError, DbProviderManifest& providerManifest, DbProviderFactory& providerFactory, String& providerManifestToken, Memoizer`2& cachedCTypeFunction) +211
System.Data.Metadata.Edm.StoreItemCollection..ctor(String[] filePaths) +420
System.Data.Mapping.MetadataWorkspaceUtilities.CreateMetadataWorkspaceFromResources(Type contextType, Type baseContextType) +298
System.Data.Mapping.MetadataWorkspaceUtilities.CreateMetadataWorkspace(Type contextType) +28
....
....
....

【问题讨论】:

  • 如果您在两台机器上的配置与您尝试使用的 Godaddy 机器上似乎未安装 MySql EF 提供程序相同。

标签: c# mysql silverlight entity-framework ria


【解决方案1】:

我解决了 Pawel 提到的问题,Ladislav Mrnka 提供的线程与 MYSQL EF 提供程序有关。

我做了以下来解决这个问题:

1) 确保将 Mysql.Web、Mysql.Data 和 Mysql.Data.Entity 添加到引用中

2) 添加:

<add assembly="MySql.Data, Version=6.4.4.0, Culture=neutral, PublicKeyToken=C5687FC88969C44D"/>

到配置文件中的程序集部分

3) 将以下部分添加到配置文件中:

<DbProviderFactories>
    <add name="MySQL Data Provider" 
         invariant="MySql.Data.MySqlClient" 
         description=".Net Framework Data Provider for MySQL"  
         type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=6.4.4.0,     Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
  </DbProviderFactories>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-12-07
    • 2017-12-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-30
    • 1970-01-01
    相关资源
    最近更新 更多