zoukankan      html  css  js  c++  java
  • Vs2013 使用EF6 连接mysql数据库

    最近在使用MySQL数据库,在使用EF框架连接MySQL数据库时发现了一个问题,使用DB First创建实体对象的时候会出现如下图的错误:您的项目引用了最新版实体框架….. (如下图)或者会出现新建实体对象模型时闪退。

     

    出现此问题的原因应该是由于 mysql-for-visualstudio 和 mysql-connector-net 和EF框架兼容问题。

    解决此问题的办法:

    从MySQL官网下载最新版本的mysql-for-visualstudio 和 mysql-connector-net;

    我这里使用的是 mysql-connector-net-6.9.9 和mysql-for-visualstudio-1.2.6;

     

    对应下载地址:

    mysql-for-visualstudio-1.2.6 地址:

    http://cdn.mysql.com//Downloads/MySQL-for-VisualStudio/mysql-for-visualstudio-1.2.6.msi

    mysql-connector-net-6.9.9下载地址:

    http://cdn.mysql.com//Downloads/Connector-Net/mysql-connector-net-6.9.9.msi

    安装完成之后使用NuGet包管理器引入Mysql.Data 和 MySql.Data.Entity 对应版本都是6.6.9的。

    使用NuGet引入包之后Web.config 会自动更新 (下面是我的web.config)

     <entityFramework>
    
        <defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
    
          <parameters>
    
            <parameter value="v12.0" />
    
          </parameters>
    
        </defaultConnectionFactory>
    
        <providers>
    
          <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
    
          <provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6, Version=6.9.9.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d"></provider>
    
        </providers>
    
      </entityFramework>
    
      <system.data>
    
        <DbProviderFactories>
    
          <remove invariant="MySql.Data.MySqlClient" />
    
          <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.9.9.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
    
        </DbProviderFactories>
    
      </system.data>

    接下来新建ADO.NET实体数据模型

     

    选择数据库优先

     

    配置连接信息

     

    选择MySql Database 配置对应的服务器地址、用户名、密码;

    选择对应的数据库,进行测试连接之后确定即出现熟悉的界面(选择数据库对象)。

     

      

    在vs2013下使用EF6连接MySQL配置成功完成。

    在vs下连接非微软的数据库是有些麻烦,不过熟悉之后觉得也可以理解。

  • 相关阅读:
    392 单页面应用程序概述
    391 vue $refs:vue获取组件、DOM元素
    使用这些 CSS 属性选择器来提高前端开发效率!
    WEB网站常见受攻击方式及解决办法
    能用HTML/CSS解决的问题就不要使用JS
    两张图解释CSS动画的性能
    20个编写现代CSS代码的建议
    微信小程序之下载(下载文件tempFilePath后缀unknown)
    使用typescript构建Vue应用
    Vue模板语法、事件和表单使用
  • 原文地址:https://www.cnblogs.com/zhaochengshen/p/5682231.html
Copyright © 2011-2022 走看看