ASP.NET Entity Framework with MySql服务器发布环境配置

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介:

首先,.net应该自带Entity Framework,所以服务器只要有对应版本的.net Framework就OK!

  我们在开发环境中一般会直接使用edmx来管理应用程序与数据库的交互操作,所有与数据库相关的操作均交给EF来操作,开发人员会将关注点移到应用层,更多关心程序业务方面的开发。我们知道,VS默认只提供了部分数据库对应的驱动程序,如SQL Server,Excel,Access,Oracle等,MySql没有对应的驱动程序。那么,在Visual Studio中开发基于MySql数据库的ASP.NET应用程序前,下面这些工具或程序集是需要的。

  1. MySql Connector - 提供MySql数据库的驱动程序。

  安装包可以在MySql官网上找到http://dev.mysql.com/downloads/connector/net/6.0.html

  这里有一篇文章描述了一些基本用法http://www.cnblogs.com/wintersun/archive/2010/12/12/1903861.html

  有了驱动程序之后,Entity Framework便可以使用对应的Provider连接上MySql数据库,然后自动生成对应的实体类和数据库操作的方法。

  2. MySql for Visual Studio - 可选。该工具提供对Visual Studio的扩展。还记得我们如何在VS中连接SQL Server数据库然后直接对其中的表、存储过程等对象进行修改么?有了MySql for Visual Studio这个工具之后,你就可以在VS中连接MySql数据库并随时查看其中的数据、表等各种对象,并可以进行修改。官方站点有提供下载http://www.mysql.com/why-mysql/windows/visualstudio/

  3. MySql Front - 可选。一个MySql数据库开发的客户端工具,支持可视化的操作界面,使得对MySql数据库的各种操作变得容易。这里是下载的地址http://www.mysqlfront.de/。当然,你可以使用任何一个你熟悉的客户端工具。

  好了!你现在已经拥有开发环境的所有必备项,在本机你可以像开发普通的数据库应用程序一样开始编写代码,因为有EF的支持,对数据库的操作非常简单!有关Entity Framework的一些基本用法和介绍,可以查看这里http://www.entityframeworktutorial.net/EntityFramework-Architecture.aspx

  不过在服务器端,情况稍微有点不同!有时候我们不可能在服务器上直接安装MySql Connector,发布在服务器上的程序由于缺少MySql对应的数据库驱动程序而通常会报unable to find the requested .Net Framework Data Provider的错误。如何解决这个问题呢?其实,MySql Connector的安装也不过是在本机注册了几个.net程序集而已,我们将其中用到的程序集直接引用到工程里,然后将其设置为Copy Local = true即可。下面三个程序集是必须的:

  你可以从本机已安装的Assembly文件夹中找到它们,下面是从我本地找到的对应程序集文件夹地址。

  展开References文件夹,找到对应的程序集,右键单击选择属性,然后将Copy Local改成True。然后,记住还需要在Web.config中添加下面的内容,本机开发的时候你可能不需要这些设置项,所以在开发环境中你可以将它们注释掉。

复制代码
<system.data>
    <DbProviderFactories >
      <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.6.5.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
    </DbProviderFactories>
  </system.data>
复制代码

   确保服务器上安装的.net Framework已包含你所使用的Entify Framework版本,然后程序应该能正常运行。

 

相关资源:

Using MySQL with Entity Framework and ASP.NET MVC – Part I

Using MySQL with Entity Framework


本文转自Jaxu博客园博客,原文链接:http://www.cnblogs.com/jaxu/p/3672373.html,如需转载请自行联系原作者

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
2月前
|
缓存 关系型数据库 MySQL
百度搜索:蓝易云【CentOS8服务器安装MySQL报错:no match mysql-community-server】
现在,你已经成功安装了MySQL服务器并解决了"no match mysql-community-server"的报错问题。祝你使用愉快!
43 1
|
4月前
|
SQL 弹性计算 关系型数据库
服务器数据恢复-华为ECS云服务器mysql数据库数据恢复案例
云服务器数据恢复环境: 华为ECS云服务器,linux操作系统,mysql数据库(innodb引擎)。作为网站服务器使用。 云服务器故障: 在执行mysql数据库版本更新测试时,误将本应该在测试库上执行的sql脚本执行在生产库上了,生产库上的部分表被truncate,部分表内有少量数据被delete。 需要恢复被truncate的表以及被少量数据被delete的表。
服务器数据恢复-华为ECS云服务器mysql数据库数据恢复案例
|
17天前
|
关系型数据库 MySQL 数据库
卸载云服务器上的 MySQL 数据库
卸载云服务器上的 MySQL 数据库
33 0
|
3月前
|
缓存 关系型数据库 MySQL
mysql shell如何查看服务器状态
mysql shell如何查看服务器状态
252 1
|
3月前
|
存储 缓存 关系型数据库
【如何选择Mysql服务器的CPU核数及内存大小】
【如何选择Mysql服务器的CPU核数及内存大小】
111 0
|
11天前
|
关系型数据库 MySQL 数据库连接
Django(四):Django项目部署数据库及服务器配置详解(MySQL)
Django(四):Django项目部署数据库及服务器配置详解(MySQL)
35 11
|
1月前
|
Java 关系型数据库 MySQL
Flink1.18.1和CDC2.4.1 本地没问题 提交任务到服务器 报错java.lang.NoClassDefFoundError: Could not initialize class io.debezium.connector.mysql.MySqlConnectorConfig
【2月更文挑战第33天】Flink1.18.1和CDC2.4.1 本地没问题 提交任务到服务器 报错java.lang.NoClassDefFoundError: Could not initialize class io.debezium.connector.mysql.MySqlConnectorConfig
50 2
|
1月前
|
关系型数据库 MySQL Linux
Linux服务器安装MySQL
Linux服务器安装MySQL
|
1月前
|
关系型数据库 MySQL 数据库
MySQL服务器端安装教程
MySQL服务器端安装教程
32 0
|
2月前
|
SQL 开发框架 .NET
ASP.NET WEB+EntityFramework数据持久化——考核练习库——1、用户管理系统(考点:查询列表、增加、删除)
ASP.NET WEB+EntityFramework数据持久化——考核练习库——1、用户管理系统(考点:查询列表、增加、删除)
67 0