由于本身WebMisCentral采用的是EF5.0,所以适配起来还是非常简单的,下面看操作:

1.ElegantWM.WebUI层中(或者ElegantWM.DAL)通过NUGET下载MySQL.Data 6.7.5

2.修改Web.config如下:

<?xml version="1.0"?>
<!--
For more information on how to configure your ASP.NET application, please visit
http://go.microsoft.com/fwlink/?LinkId=152368
-->
<configuration>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
<sectionGroup name="common">
<section name="logging" type="Common.Logging.ConfigurationSectionHandler, Common.Logging"/>
</sectionGroup>
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
</configSections>
<log4net configSource="log4netFile.xml"></log4net>
<connectionStrings>
<!--主数据库,支持多数据库-->
<add name="SqlServerDB" providerName="System.Data.SqlClient" connectionString="Server=localhost;Uid=sa;Pwd=o;DataBase=CN9295;" />
<add name="DefaultDB" providerName="MySql.Data.MySqlClient" connectionString="Data Source=localhost;Port=3306;Initial Catalog=WMC;uid=assp;pwd=assp123;Character Set=utf8;" />
</connectionStrings>
<appSettings>
<!--系统名称-->
<add key="SysName" value="WMC-Client" />
<!--请到http://saas.chinacloudtech.com注册账号-->
<add key="GroupCode" value="" />
<add key="SysId" value="" />
<add key="SSO" value="http://saas.chinacloudtech.com" /> <add key="webpages:Version" value="2.0.0.0"/>
<add key="webpages:Enabled" value="true"/>
<add key="PreserveLoginUrl" value="true"/>
<add key="ClientValidationEnabled" value="true"/>
<add key="UnobtrusiveJavaScriptEnabled" value="true"/>
</appSettings> <system.web>
.....
</system.web>
<system.webServer>
......
</system.webServer>
<runtime>
........
</runtime>
<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.7.5.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
</DbProviderFactories>
</system.data>

</configuration>

注意上面蓝色的部分是新增的,其他的都不用动。

其中:connectionStrings里你可以随便加不同类型或同类型的多个数据库连接串,因为在WMC中数据库连接串是细化到对象的,不同对象可以拥有不同的连接串,即操作不同的数据库

3.修改ElegantWM.DAL的DBContext.cs,改成如下:

namespace ElegantWM.DAL
{
public class DB : DbContext
{
//public static readonly log4net.ILog log = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); //配置连接串,默认数据库DefaultDB
public DB(string _ConnectStr)
: base(_ConnectStr)
{
//这是以前的做法
//Database.Connection.ConnectionString = ConfigurationManager.ConnectionStrings[_ConnectStr].ToString();

Database.SetInitializer<DB>(null);
//this.Configuration.LazyLoadingEnabled = false;
}

4.遗憾的是MySql里的timestamp RowVersion在C# EF里支持不好,需要将byte[] 修改成 DateTime,故你需要将ElegantWM.EntityModel里面的Entity.cs和IEntity.cs中的RowVersion类型修改为DateTime,即可。

5.OK,你可以使用MYSQL了

6.MySql监控EF SQL的工具EFProf.exe,收费的,免费30天试用,用起来还是非常方便强大的。

WebMisCentral-Client 适配MySql数据库的更多相关文章

  1. 一、初识MySQL数据库 二、搭建MySQL数据库(重点) 三、使用MySQL数据库 四、认识MySQL数据库的数据类型 五、操作MySQL数据库的数据(重点)

    一.初识MySQL数据库 ###<1>数据库概述     1. 数据库         长期存储在计算机内的,由组织的可共享的数据集合         存储数据的仓库         文件 ...

  2. MySQL数据库的初始化mysql_install_db 【基础巩固】

    一.mysql_install_db说明 当MySQL的系统库(mysql系统库)发生故障或需要新加一个mysql实例时,需要初始化mysql数据库. 需要使用的命令:/usr/local/mysql ...

  3. linux 安装mysql数据库——tar.gz包解压安装法

    mysql数据库有多种安装方式,本文只介绍在Linux服务器上的tar.gz包解压安装法, 先通过mysql官网或者网络资源下载 mysql-5.7.3-m13-linux-glibc2.5-x86_ ...

  4. MYSQL数据库的优化

    我们究竟应该如何对MySQL数据库进行优化?下面我就从MySQL对硬件的选择.MySQL的安装.my.cnf的优化.MySQL如何进行架构设计及数据切分等方面来说明这个问题. 服务器物理硬件的优化 在 ...

  5. MYsql 数据库密码忘记(Linux)

    在Linux 上面装上了 Mysql 数据库,但是发现密码忘了,悲催,解决方法跟Window系统下一样的, 不管是哪个操作系统处理的思路是相同的,就是首先要把mysql的权限去掉,这样即使忘了密码,不 ...

  6. MYsql 数据库密码忘记(Window)

    之前想在自己的机器上搭建一个数据库,但是又怕占用内存太大,因此特地从网上下载了一个绿色版,免安装版本的,开始用着 还可以,后来重启机器发现悲催了,数据库用不了了, 决心好好整整Mysql 我的是 版本 ...

  7. MySQL数据库中delimiter的作用概述

    以下的文章主要是向大家描述的是MySQL数据库中delimiter的作用是什么?我们一般都认为这个命令和存储过程关系不大,到底是不是这样的呢?以下的文章将会给你相关的知识,望你会有所收获. 其实就是告 ...

  8. 查看mysql数据库版本方法总结

    当你接手某个mysql数据库管理时,首先你需要查看维护的mysql数据库版本:当开发人员问你mysql数据库版本时,而恰好你又遗忘了,那么此时也需要去查看mysql数据库的版本............ ...

  9. MySQL数据库

    1.1 数据库的发展史 1.1.1 萌芽阶段--文件系统 文件系统 1.1.2 第一代数据库--层次模型.网状模型 1.1.2.1层次模型 这是一种导航结构,导航结构的优点:分类管理:导航结构的缺点: ...

随机推荐

  1. spring的i o c简单回顾

    1.springIOC是一个创建对象的容器,他负责将我们需要的对象帮我们创建出来,创建时间是:当我们从上下文环境中读取此对象时就会帮我们创建,严格意义上来讲它是一种编程思想不是一种技术. 2.依赖注入 ...

  2. Oracle - Dbms Output window

    Ensure that you have your Dbms Output window open through the view option in the menubar. Click on t ...

  3. 谷歌浏览器升级引起的BUG

    问题描述:在谷歌浏览器中,电脑打开A系统,添加附件时无法弹框. 预期结果:添加附件,可以打开弹框. 问题分析:谷歌浏览器自动升级,自55.0.2883.75后发布的新版本均自动停用Flash插件. 解 ...

  4. Session失效后所有Ajax请求跳转登录地址

    当登录的Session失效后,采用ajax请求数据时会没有反应,这时候应该自动跳转到登录页面,让用户重新登录. 全局配置以下可实现 $(function() { $.ajaxSetup({ compl ...

  5. CODEVS.3990.中国余数定理2(CRT)

    题目链接 颓了一天 写个模板吧.. Chinese_Remainder_Theorem: MashiroSky.远航之曲 #include <cstdio> #include <cc ...

  6. 潭州课堂25班:Ph201805201 WEB 之 页面编写 第四课 登录注册 (课堂笔记)

    index.html 首页 <!DOCTYPE html> <html lang="en"> <head> <meta charset=& ...

  7. 常用伪元素及content属性值的使用

    1.常用伪元素有 after.before,使用方法,如下 a:after{ display:block; content:''; } 2. content: "/\00a0";/ ...

  8. SSH三大框架的原理和核心(转)

    一.Struts2的工作流程:1.用户在客户端发起请求,客户端会初始化一个servlet容器请求:2.servlet容器把请求会传递给context容器,context容器找到目标web工程.3.进行 ...

  9. Java基础-多线程-③线程同步之synchronized

    使用线程同步解决多线程安全问题 上一篇 Java基础-多线程-②多线程的安全问题 中我们说到多线程可能引发的安全问题,原因在于多个线程共享了数据,且一个线程在操作(多为写操作)数据的过程中,另一个线程 ...

  10. iOS: 数据持久化方案

    数据持久化方案(如果总结不到位,或者有误的地方,敬请斧正) 一.功能: 主要是将数据持久化到本地,减少对网络请求的次数,既节省了用户的流量,也增强了App的体验效果. 二.种类:  plist存储:使 ...