服务器错误

js81xvg6  于 2021-06-24  发布在  Mysql
关注(0)|答案(1)|浏览(406)

实体框架的“/”应用程序中存在服务器错误。
我已经添加了几乎所有mysql的引用。每次错误都在改变

<entityFramework>
    <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />
      <providers>
        <provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6" />
        <provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.EntityFramework, Version=8.0.11.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
      </providers>
  </entityFramework>
  <entityFramework>
    <defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
      <parameters>
        <parameter value="mssqllocaldb" />
      </parameters>
    </defaultConnectionFactory>
    <providers>
      <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
    </providers>
  </entityFramework>
tsm1rwdh

tsm1rwdh1#

这个错误与以下几个部分有关:

<entityFramework></entityFramework>

你只需要准备一个配置文件。不能在配置文件中使用几个entityframework部分。enityframework部分只能在您的配置中出现一次,在这一部分中,您必须输入所有设置。
所以你需要这样的东西:

<entityFramework>
  <defaultConnectionFactory type="..." />
  <parameters>
    <parameter value="..." />
  </parameters>
  <providers>
    <provider ... />
    <provider ... />
    <provider ... />
  </providers>
</entityFramework>

就这样。
但下一个问题是,您试图同时使用几个db服务器。用一个dbcontext很难做到这一点。最好为每个数据库使用dbcontext。
最好的解决方案是在配置文件中为每个db连接字符串创建一个。
如果您需要使用多个defaultconnectionfactory,您可以在这里找到更多详细信息。有一些解决办法。

相关问题