0

在托管服务提供商的服务器上运行我的 MVC asp.net (.net 4.0) 网站时出现以下错误: 尝试通过方法“MySql.Data.MySqlClient.MySqlClientFactory.System.IServiceProvider.GetService(System.Type)”访问字段'MySql.Data.MySqlClient.MySqlProviderServices.Instance' 失败。

关于此应用程序应了解以下内容:

  • 它使用实体框架。托管服务提供商在我的网站上放置了一个测试 .aspx 页面,该页面不使用可以连接到数据库的实体框架。
  • 该网站在我的本地主机上运行,​​除非我使用他们的信任策略配置文件。在这种情况下,我会遇到同样的错误。
  • 在他们进行一些更新之前它就起作用了,其中包括添加 SecurityClass MySqlClientPermission

我已经搜索了解决方案,但只找到了 mysql 连接器其他问题的答案。为了表明这些不是问题,我在此处包括了这些: 这包含在 web.config 中:

<DbProviderFactories>
<clear />
<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.5.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" /> </DbProviderFactories>

他们确实将其包含在信任配置中:

<SecurityClass Name="MySqlClientPermission" Description="MySql.Data.MySqlClient.MySqlClientPermission, MySql.Data, Version=6.5.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />

<IPermission class="MySqlClientPermission" version="1"> <add connectionString="Server=;Database=;User=;Password=;Port=;Pooling=;" restrictions="" KeyRestrictionBehavior="PreventUsage" />
</IPermission>

也许有人可以为我指明正确的方向,因为在尝试了很多事情之后,我不知所措。

4

0 回答 0