zoukankan      html  css  js  c++  java
  • VS 2017 + EF6 + MySQL5.7 建立实体模型闪退问题

    前记

    最近有用到 MySQL 的空间数据这一块。

    对于这一块的数据类型,在 .NET 里怎么用不是很清楚。

    于是想到看看 EF 里面是怎么用的。结果新建项目,建立实体模型,总是不成功。

    最后经过多次尝试、查阅得以解决。

    下面就是具体经过。 

    失败的经历

    具体环境是:VS2017 、.NET Framework 4.6 、MySql.Data.Entity 6.9.12

    在这个环境下总是不成功,具体是在这一步闪退,也不报错:

    在点击“下一步”后,没有进入到下一步,窗口直接关掉。

    考虑有可能是 .NET Framework 问题,更换了其他版本不行;

    考虑有可能是 MySql.Data.Entity 问题,更换了几个版本测试也还是不行;

    查阅有说是,mysql-connector-net 版本问题,我看了下,自己安装的是:mysql-connector-net-6.9.9,对应的把 MySql.Data.Entity 也换为 6.9.9,同样还是报错。

    那这是什么问题?

    那是 mysql-connector-net 版本 太低了?有推荐是换成 6.9.10,下载发现官网上面不提供这个版本,其他地方可以下载。

    在这里发现一个问题:官网能下载的 mysql-connector-net 版本号和 NuGet 上面的  MySql.Data.Entity  版本号是一一对应的(虽然 NuGet 可以用控制台安装任意版本)

    基于这个,开始了下面的实验。

    成功一试

    上面说到的问题,看了官网 mysql-connector-net 有 6.9.12/6.10.7 可下载,一般最新的不一定好用,那就下载 6.9.12,卸载原先的 6.9.9,安装新的 6.9.12.

    这次环境:VS2017 、.NET Framework 4.6 、MySql.Data.Entity 6.9.12(有没有发现和上面一样?)

    在这里,建模成功!成功来的这里:

    到此,实验完成,也成功了。

    个人认为:如果遇到 EF + MySQL建模问题,把 mysql-connector-net 版本和 MySql.Data.Entity 版本一致(其中mysql-connector-net 是官网可以下载的),基本可以解决问题

    最后,就是最开始,想看 EF 中对空间数据格式是怎么处理的,结果都好了,却发现 EF 没有映射空间数据(/(ㄒoㄒ)/~~)。

    好吧,也是个坑,填了也好

  • 相关阅读:
    02-model设计
    01-开发环境搭建
    04-Uwsgi配置启动Nginx虚拟主机配置
    03-MySQL安装与配置
    02-Nginx配置
    01-Nginx安装
    22-注册、登录、验证登录
    21-django-pure-pagination分页
    (二)windows上使用docker
    Docker在windows7上的安装
  • 原文地址:https://www.cnblogs.com/zhurong/p/9481086.html
Copyright © 2011-2022 走看看