gpt4 book ai didi

c# - Entity Framework Powertools 使用 Mysql 和 EF6 生成 View

转载 作者:行者123 更新时间:2023-11-29 23:51:26 24 4
gpt4 key购买 nike

我正在使用 Entity Framework 6.1 和 MySQL Server 5.5.35 以及 EF Powertools(最新版本)。我能够正常运行和使用该框架,并在应用程序配置文件中注册了所有正确的提供程序详细信息。

我遇到的问题是我无法使用右键单击强力工具功能“生成 View ”,它不断抛出此异常:

System.Reflection.TargetInitationException:调用目标已引发异常。 ---> System.Data.Entity.Core.MetadataException:指定的架构无效。错误:Model1.edmx(7,8):错误 0152:找不到具有固定名称“MySql.Data.MySqlClient”的 ADO.NET 提供程序的 Entity Framework 提供程序。确保提供程序已在应用程序配置文件的“entityFramework”部分中注册。

我明白在问什么,因为我最初运行项目时遇到了这个问题,但是尽管在运行和编译生成 View 函数时它工作正常,但会抛出此错误。我只能假设 Power 工具正在另一个位置寻找提供程序,而不是我的应用程序配置文件,因为它们已注册。

有谁知道从哪里可以获取提供程序列表(也许是从全局系统配置文件中)?我对此并没有真正的经验,并且在搜索了几个小时后却一无所获。

任何帮助或指向正确的方向将不胜感激。谢谢

最佳答案

第一个原因,尝试使用较低版本的 Entity Framework 。当我使用MySql时,EF6此时不支持Mysql。如果您有连接器 6.8.x,那么现在显然可以使用 6.0,但我仍然不确定 6.1。您可以在这里查看信息:EF6.0 connector

可能有几个原因导致:您确定在 App.config 或 Web.config 中有这样的部分吗?:

<entityFramework>
<providers>
<provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity" />
</providers>
</entityFramework>

当我使用 MySql 时,我还必须添加以下代码,不知道为什么,因为当我使用 SQL Server 时我不需要添加...[DbConfigurationType(typeof(MySql.Data.Entity.MySqlEFConfiguration))]
公共(public)类 DemoContext :DbContext{}

关于c# - Entity Framework Powertools 使用 Mysql 和 EF6 生成 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25626880/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com