http://www.dotblogs.com.tw/yc421206/archive/2014/03/24/144507.aspx

dotConnect for MySQL 是一家強大的 3rd Component 它提供了相當多的資料庫存取元件,有興趣的人可以前往查看功能清單

http://www.devart.com/dotconnect/mysql/features.html

這篇主要是為試用心得

準備環境

1.安裝 dotConnect for MySQL 8.3 Professional Trial,http://www.devart.com/dotconnect/mysql/download.html

2.從NuGet 安裝 Entity Framework

3.加入以下參考

  • Devart.Data.dll
  • Devart.Data.MySql.dll
  • Devart.Data.MySql.Entity.dll

4.資料庫要存在,不存在會失敗,似乎沒有提供第一次動態建立 DB 的功能

完成之後便可開始 Coding,如同前面幾篇介紹的操作步驟,在這裡就節省詳細敘述,專注在元件使用

http://www.dotblogs.com.tw/yc421206/archive/2014/01/20/141712.aspx

http://www.dotblogs.com.tw/yc421206/archive/2014/02/20/144093.aspx


建立 POCO (DTO) class

public class Identity
{
[Key]
public int Id { get; set; } public string Name { get; set; }
}

加入 provider 組態設定

<provider invariantName="Devart.Data.MySql" type="Devart.Data.MySql.Entity.MySqlEntityProviderServices, Devart.Data.MySql.Entity" />

加入連線字串

<add name="MySQL" providerName="Devart.Data.MySql" connectionString="Server=localhost;Database=demo;Uid=your id;Pwd=your pw" />

完整組態檔如下

<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework,
Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
</configSections>
<connectionStrings>
<add name="MySQL" providerName="Devart.Data.MySql" connectionString="Server=localhost;Database=demo;Uid=your id;Pwd=your password" />
</connectionStrings>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
</startup>
<entityFramework>
<providers>
<provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
<provider invariantName="Devart.Data.MySql" type="Devart.Data.MySql.Entity.MySqlEntityProviderServices, Devart.Data.MySql.Entity" />
</providers>
</entityFramework>
</configuration>

建立 DbContext 類別

public class MySqlDbContext : DbContext
{
public DbSet<Identity> Identities { get; set; } public MySqlDbContext()
: base("MySQL")
{
}
}

最後,建立一個測試用的 Winform 專案,加入以下程式碼,即可完成

private void Form1_Load(object sender, EventArgs e)
{
MySqlDbContext ef = new MySqlDbContext(); ef.Identities.Load();
MessageBox.Show("OK");
}

有幾點需要再跟原廠確認

1.當 DB 不存在時,無法動態建立 DB?

2.可能它們自家軟體已經有支援,所以不支援EF Designer?


文章出自:http://www.dotblogs.com.tw/yc421206/archive/2014/03/24/144507.aspx

若有謬誤,煩請告知,新手發帖請多包涵

Code First use dotConnect for MySQL的更多相关文章

  1. Error code:1728 Cannot load from mysql.proc. The table is probably corrupted

    Error code:1728 Cannot load from mysql.proc. The table is probably corrupted http://bugs.mysql.com/b ...

  2. Mysql导入Sql文件时报Error Code: 2013 - Lost connection to MySQL server during query

    MySql 有时我们导入sql文件,文件过大,导致Error Code: 2013 - Lost connection to MySQL server during query这种错误 执行以下: S ...

  3. Entity Framework Code First ---EF Power Tool MySql

    关于如何使用EF Power Tool的介绍请看 http://www.cnblogs.com/LingzhiSun/archive/2011/05/24/EFPowerTool_1.html, 这里 ...

  4. Mysql:Error Code 1235,This version of MySQL doesn’t yet support ‘LIMIT & IN/ALL/ANY/SOME 错误解决

    This version of MySQL doesn’t yet support ‘LIMIT & IN/ALL/ANY/SOME 错误解决 这次国庆节回来后的测试中,在一个Mysql表达式 ...

  5. MySQL Error Code文档手册---摘自MySQL官方网站

    This chapter lists the errors that may appear when you call MySQL from any host language. The first ...

  6. MySQL Workbench出现:Error Code: 2013. Lost connection to MySQL server during query的问题解决

    解决办法: [Edit]->[Preference]->[SQL Editor] 将下图DBMS connection read time out (in seconds)适当调大: 参考 ...

  7. 使用VS Code的MySQL扩展管理数据库

    我将在本文告诉你如何用VS Code的扩展程序管理MySQL数据库,包括连接到MySQL.新建数据库和表.修改字段定义.简单的查询方法以及导入导出. 在许多情况下,我们需要随时查看数据库的记录来确保程 ...

  8. MYSQL MHA

    MYSQL MHA 简介: MHA(Master High Availability)目前在MySQL高可用方面是一个相对成熟的解决方案,它由日本DeNA公司youshimaton(现就职于 Face ...

  9. 我的ef连接mysql之旅

      摘要: install-package ef6,mysql.data:增加provider invariantName="MySql.Data.MySqlClient" typ ...

随机推荐

  1. 牛客小白月赛2 E:是是非非(尼姆博弈)

    链接:https://www.nowcoder.com/acm/contest/86/E来源:牛客网 题目描述 坎为水,险阳失道,渊深不测:离为火,依附团结,光明绚丽.坎卦:水洊至,习坎:君子以常德行 ...

  2. 51Nod:1003 阶乘后面0的数量

    1003 阶乘后面0的数量  基准时间限制:1 秒 空间限制:131072 KB 分值: 5 难度:1级算法题  收藏  关注 n的阶乘后面有多少个0? 6的阶乘 = 1*2*3*4*5*6 = 72 ...

  3. 2017 ECL-FINAL J.Straight Master

    题目链接:http://codeforces.com/gym/101775/problem/J 思路:序列差分一下,然后用得到的查分序列乱搞就可以了 注意差分序列第一项等于a[i],之后n-1项为ch ...

  4. LeetCode Pascal's Triangle && Pascal's Triangle II Python

    Pascal's Triangle Given numRows, generate the first numRows of Pascal's triangle. For example, given ...

  5. Mysql_connect报告”No such file or directory”错误的解决方法

    写了个php脚本单独执行mysql_connect(),发现错误信息居然是“No such file or directory"! 首先确定是mysql_connect()和mysql_pc ...

  6. TensorFlow笔记-06-神经网络优化-损失函数,自定义损失函数,交叉熵

    TensorFlow笔记-06-神经网络优化-损失函数,自定义损失函数,交叉熵 神经元模型:用数学公式比表示为:f(Σi xi*wi + b), f为激活函数 神经网络 是以神经元为基本单位构成的 激 ...

  7. Java调用.Net WebService参数为空解决办法 (远程)调试webservice方法

    同事遇到一个很囧的问题,java调,netwebservice的时候,调用无参数方法成功,调用有参数的方法每次我这边的webservice日志都记录参数为空,而我自己.Net程序调用完全没有问题,后面 ...

  8. PHP 中的对象传递

    <?php class A { public $age = 0; public $username = ""; public $obj = null; } $a = new ...

  9. 先进驾驶员辅助系统ADSA

    ADSA(Advanced Driver-Assistance Systems)字面翻译过来是“先进驾驶员辅助系统”,实际上它是一种“辅助驾驶员更便捷更安全使用汽车”的系统. ADAS的研发历史可以追 ...

  10. 【转】每天一个linux命令(61):wget命令

    原文网址:http://www.cnblogs.com/peida/archive/2013/03/18/2965369.html Linux系统中的wget是一个下载文件的工具,它用在命令行下.对于 ...