【问题标题】:Reverse Engineering Code First With MySQL逆向工程代码优先使用 MySQL
【发布时间】:2018-08-17 03:31:35
【问题描述】:

有人可以帮我解决这个问题吗?我想将“逆向工程代码优先”与使用 MySQL 的实体框架一起使用。我安装了 odbc、connector .net 等,但我仍然看不到这个......我在这个主题中做了所有事情(我也遇到了同样的问题):Can't use a MySQL connection for entity framework 6

但仍然不起作用:(。我记录了我所做的所有步骤..(英语对不起):https://youtu.be/xqEgCsu7_eU

【问题讨论】:

  • 尝试在系统变量中添加odbc连接器。
  • 我想使用反向引擎生成数据模型。但现在我这里没有这个选项...(见视频):(

标签: entity-framework


【解决方案1】:

我已经让它与 MySql 连接器 6.9.11 一起使用。它是如此的困难和脆弱,我不确定这最终是否是一个好主意。至少有 10 件事情会出错并耗费数小时的时间。一旦你让它工作,要非常小心不要改变任何东西。无论如何。这是我的一些笔记:

警告与 MySQL 服务器 5.6.39 或 5.7.19 一起使用。不要使用 MySQL 服务器版本 5.7.21(它会因反向 eng 失败)Aurora 似乎没问题。

安装“mysql-connector-net-6.9.11.msi”。较新的 MySQL Connector 6.10 似乎有问题??使用较旧的 6.9.11。必须通过 msi 文件安装。拥有本地文件是不够的。

安装“mysql-for-visualstudio-1.2.8.msi”还是“mysql-for-visualstudio-1.2.7.msi”?注意:1.2.7 永远不会正确卸载。 VS 2015 似乎需要“MySQL for Visual Studio”才能使 EF Poco 工作,(Pro、Enterprise 不同)

必须将“Entity Framework Power tools Beta 4”作为插件安装到 Visual Studio 2013。它需要一些努力才能安装到 2015 年、17 年,但可以完成。 https://visualstudiogallery.msdn.microsoft.com/72a60b14-1581-4b9b-89f2-846072eff19d

可能出错的地方:

问题 1: 您收到错误“处理模板 'Entity.tt' 时发生一个或多个错误。” 这总是在我重新启动 VS 后第一次使用逆向工程时发生。 只需更改 .NET 程序集版本似乎就可以解决问题。针对逆向工程的 .NET 4.5(不是 4.5.1)。 对 EF 使用 .net4.5。如果您看到异常“System.ArgumentException:空路径名不合法。”
记得改回 4.5.2 或更高版本。 针对 .NET Framework 4.5.1 的 64 位项目支持 VS2015 编辑并继续。 (或 4.5.2)

问题 2: System.ArgumentException:在配置中找不到指定的存储提供程序“MySql.Data.MySqlClient”,或者“MySql.Data.MySqlClient”无效。 这似乎是一个 app/web.config 问题。 ??? MySql.Data.MySqlClient 在 app.config 中有多个条目??还是 bindingRedirect 错了??可能始终是错误的版本 6.9.11 ? MySql.Data.MySqlClient ??在 GAC 中安装正确的 6.9.11 版本而不仅仅是 nuget 吗? mysql-connector-net-6.9.11.msi

问题 3: MySQL 问题 - “错误 6003:表 'TableDetails' 中列 'IsPrimaryKey' 的值为 DBNull。”指定的演员表无效。 [2016 年 1 月 1 日 15:27]“Noman Khan。在 MySQL 数据库上运行以下命令,然后尝试是否可行。设置 global optimizer_switch='derived_merge=off'”(在您将使用的用户上。即 root)

第 4 期: 内存不足执行。重新启动 VisualStudio。

第 5 期: 如果“更改数据源”列表框中没有显示“MySQL”选项。安装 Visual Studio MySQL 插件 Can't use a MySQL connection for entity framework 6

注意: EntityFrameworkPowerToolsBeta4 不是为 VS2015 或 17 构建的。必须修改安装程序版本才能安装 How to use Entity Framework Power Tools in Visual Studio 2015? http://thedatafarm.com/data-access/installing-ef-power-tools-into-vs2015/

注意: 您可以在延迟执行查询之前通过调试/中断对象来查看生成的 SQL 查询。 您可以使用别名映射到其他数据库 注意像“Statu”到“Status”这样糟糕的复数规则

查看https://us.visualstudiogallery.msdn.microsoft.com/ee4fcff9-0c4c-4179-afd9-7a2fb90f5838/view/Discussions 这似乎更具可配置性和更好的支持。但只适用于 MSSQL?

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-12-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-11-10
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多