环境:vs2013+mysql5.6+mysql connector for .net 6.8.3+MySQL for Visual Studio 1.1.3

参考:http://dev.mysql.com/doc/connector-net/en/connector-net-entityframework60.html

mvc4连接mysql的资料很少,百度了一圈也没找到。一开始用的vs2013怎么也连接不上mysql,连ado.net不显示,用mysql.data的直接连接倒是能成功,但是到mvc的时候就需要各种配置了。

最后在mysql的官网上找到了资料:

1.首先要先安装MySQL for Visual Studio ,你可能会说我安装了啊,怎么还是不显示呢看官网说的:

所以你需要安装1.1版本以上的才可以,除此之外,mysql官网还说了:

Visual Studio 2013 (Professional edition and up only) is supported by MySQL Connector/Net 6.8 and up with the MySQL for Visual Studio product.

必须是vs2013 professional版本以上才可以!!

等等,mysql的官网还有条:

Always install the MySQL for Visual Studio before installing MySQL Connector/Net.

安装MySQL Connector/Net之前要先安装MySQL for Visual Studio,不知道聪明的你是不是安装反了

安装MySQL Connector/Net,可以通过NuGet工具获得,比较轻松愉快,当然你也可以自己下载,自己引用

2.

配置环境:

修改web.config

<connectionStrings>
<add name="MyContext" providerName="MySql.Data.MySqlClient" connectionString="server=localhost;
port=3306;database=mycontext;uid=root;password=********"/>
</connectionStrings>
<entityFramework  codeConfigurationType="MySql.Data.Entity.MySqlEFConfiguration, MySql.Data.Entity.EF6">
<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="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices,
EntityFramework.SqlServer" />
</providers>
</entityFramework>

  添加mysql.data,mysql.data.entity.EF6到引用

下面mysql官方还温馨的建议了:

(1)在context class顶部添加:[DbConfigurationType(typeof(MySqlEFConfiguration))]

(2)添加  codeConfigurationType="MySql.Data.Entity.MySqlEFConfiguration, MySql.Data.Entity.EF6" 到<entityFramework> 上面的字节里我已经添加了

(3)程序开始的时候添加 DbConfiguration.SetConfiguration(new MySqlEFConfiguration());

实例代码:

[DbConfigurationType(typeof(MySqlEFConfiguration))]
class JourneyContext : DbContext
{
public DbSet<MyPlace> MyPlaces { get; set; } public JourneyContext()
: base()
{ } public JourneyContext(DbConnection existingConnection, bool contextOwnsConnection)
: base(existingConnection, contextOwnsConnection)
{ }
} using (MySqlConnection conn = new MySqlConnection("<connectionString>"))
{
conn.Open();
... using (var context = new JourneyContext(conn, false))
{
...
}
}

mysql官网有一个例子,参考引用中就是,如果你设了密码会给有InnerException = {"Authentication to host 'localhost' for user 'root' using method 'mysql_native_password' failed with message: Access denied for user 'root'@'localhost' (using password: NO)"}" 的提示,你需要在连接字符串中增加

Persist Security Info=True;

我实现的效果:

刚开始学习mvc,感觉比webform好用一些,要是连上了过来道个喜吧

 

asp.net mvc4连接mysql的更多相关文章

  1. ASP.Net MVC连接MySQL和Code First的使用

    首先要准备一下的工具作为环境 MySQL Community Server 5.7.x My Workbench 6.3 VS2017 新建一个项目,NetMySQLCodeFirst 选择MVC,再 ...

  2. 处理asp.net core连接mysql的一个异常Sequence contains more than one matching element

    晚上在那里调程序,把mysql.data组件的nuget包进行了更新,前几天好好的程序,开始抛错,跟踪断点发现以下的异常: Unable to connect to any of the specif ...

  3. Asp.Net Core 连接Mysql

    上一篇文章里最后在VS里测试是没有问题的,但是在Windows命令行模式下会报错. 首先用dotnet restore命令的时候会出现error: 然后用dotnet run会出现警告,但是依旧会成功 ...

  4. ASP.NET MVC4 with MySQL: Configuration Error (MySql.Web.v20)

    今天在浏览ASP.NET项目时,提示如下错误: Could not load file or assembly ‘MySql.Web.v20, Version=6.9.4.0, Culture=neu ...

  5. ASP.NET 连接MySQL数据库 详细步骤

    ASP.NET默认的数据库是MS SQL Server,微软的数据库产品.事实上,如果不计成本因素的话,Windows Server + IIS + MS SQL Server + ASP.NET是网 ...

  6. ASP 连接 MySQL 数据库两种方法

    一般都是用myodbc来连接.首先,在系统中安装 Mysql 的ODBC数据库驱动.如安装稳定版本是3.51.下载地址是:http://dev.mysql.com/downloads/connecto ...

  7. Asp.Net连接Mysql报错Out of sync with server

    Asp.Net连接Mysql报错Out of sync with server 原因:程序引用的MySql.Data.dll版本高于服务器版本 解决:下载一个低版本的MySql.Data.dll,项目 ...

  8. 搭建连接MySql的三层架构的ASP.NetCore2.0的WebApi

    里我们用三层架构搭建一个连接MySql的ASP.netCore模板的WebApi项目 首先添加WebApi项目(ASP.NetCore版本) 右键解决方案>新建项目> 选择Web>A ...

  9. asp.net core2.0 连接mysql和mssql

    转自:https://www.jianshu.com/p/15a557ac43d9 1.连接mysql 第一步,新建asp.net core项目   新建项目 本例程作简单演示两种数据库的连接,为简便 ...

随机推荐

  1. 表单提交post和get方法区别

    表象不同,get把提交的数据url可以看到,post看不到 原理不同,get 是拼接 url, post 是放入http 请求体中 提交数据量不同,get最多提交2k数据,浏览器的限制.post理论上 ...

  2. JavaEE应用程序

    一直想写一些关于JavaEE的东西,从刚開始看<Ejb in Action>的时候就想写,总是感觉自己知道的太少了.太不值得一提了.太欠缺了(我太谦虚了)--哈哈哈.到后来工作中一直在使用 ...

  3. jmeter脚本开发-BeanShell Sampler与Debug Sampler

    BeanShell支持java对象的调用,所以可直接通过BeanShell来调用java接口程序. BeanShell调用java接口例子 1.先编写两个简单的java类 创建java简单工程,并创建 ...

  4. 嵌入式实时操作系统Nucleus PLUS综述

    近些年来,随着嵌入式系统飞速的发展.嵌入式实时操作系统广泛地应用在制造工业.过程控制.通讯.仪器仪表.汽车.船舶.航空航天.军事.装备.消费类产 品等方面. Nucleus PLUS 是为实时嵌入式应 ...

  5. 硬件(MAC)地址的概念及作用

    概念:MAC地址就是在媒体接入层上使用的地址,也叫物理地址.硬件地址或链路地址,其被固化在适配器的ROM中. 可见MAC地址实际上就是适配器地址或适配器标识符.当某台计算机使用某块适配器后,适配器上的 ...

  6. 给 JavaScript 开发者讲讲函数式编程

    本文译自:Functional Programming for JavaScript People 和大多数人一样,我在几个月前听到了很多关于函数式编程的东西,不过并没有更深入的了解.于我而言,可能只 ...

  7. c++ 使用boost regex库 总结

    用java的时候觉得挺折腾,回头来弄c++才知道什么叫折腾...汗... 首先参考我写的这篇文章:http://www.cnblogs.com/qrlozte/p/4100892.html 我从sou ...

  8. 高分辨率转HTML成PDF(ephtmltopdf.dll)

    今天看到园友分享的 wkhtmtopdf--高分辨率转HTML成PDF(三) 想起我做 一键保存网页为PDF_V1.2 的时候,也研究过一段时间这个,一开始也看的是wkhtmltopdf,不过发现wk ...

  9. centos 源码安装apache 之apr、apr-util

    apr 和 apr-util官网下载地址: http://apr.apache.org/download.cgi 安装顺序是先安装apr然后再安装 apr-util,因为安装apr-util需要apr ...

  10. Android Studio 使用笔记:[转] Mac下修改Android Studio 所用的JDK版本

    原文链接:http://www.jianshu.com/p/d8d1d72d0248# 最近项目从Eclipse+Ant构建模式转移到了Android Studio+Gradle构建模式,自然的JDK ...