序曲:学习编程最好的方式就是敲代码,没有比这个更好的方法,哪怕你看了上百G的视频,都不如你自己敲几行代码更为有效。还有要记得敲完代码然后写一篇随笔来记录一下你所学所想。

大家都知道,.netcore是微软一个具有历史意义的产品,因为终于开始跨平台了,

敲了那么多年的代码,每次都被吐槽不能跨平台,现在终于开启了跨平台的脚步了。

既然跨平台了,那么我们是不是可以使用mysql了,毕竟mysql的使用率是非常的高,

各种解决方案和优化方案都非常的多。如果你不知道什么是mysql,那么你自己去百度一下。

好了,废话太多了,我们开始来讲一讲如何在core上使用mysql。

第一步,当然是引用对应的包了

本次主要是引用两个包,分别是

MySql.Data

Dapper

引用成功之后,就开始敲代码

本讲解使用的是core控制台

当然首先你得安装mysql到你的电脑上,或者安装到centOs上面

windows安装mysql,你可以看看这位的方案:https://www.cnblogs.com/xsmile/p/7753984.html

centOS7安装mysql,你可以看看这个:https://www.cnblogs.com/Jomini/p/10749657.html

本人的mysql是安装到我的windows上的

配置你的数据库连接,这个信息最好放在配置文件中,这次是为了演示,我就放在代码中

//配置你的数据库连接信息private static string ConnString = "server=192.168.1.2;userid=root;pwd=123456;port=3306;database=redenvelopes;SslMode=none";
server是你的mysql安装到的机器上的ip地址
userid是mysql登录用户

pwd是登录密码

port是mysql的端口,一般情况下,mysql的默认端口就是3306
database是你的数据库名称
SslMode是SSL模式,这里为none
我们在以前写sql的时候,都习惯给自己写一个helper,但是这里不用了,别人都帮你写好了,你拿去直接调用即可MySqlHelper包含了丰富的api,各种增删改查,也基本满足你的需求了,这个和以前使用没什么区别

这个虽好,但是不利于封装到实体对象中,

所以我们引入了Dapper

如果学过java的人看到这个,是不是感觉挺眼熟,java中有一个mapper

本人也学过java,所以有这个感觉。

Dapper是一款轻量级ORM工具

为什么选择Dapper

  1. 轻量。只有一个文件(SqlMapper.cs)。

  2. 速度快。Dapper的速度接近与IDataReader,比DataTable好很多

  3. 支持多种数据库,包括sqlite, sqlce, firebird, oracle, MySQL, PostgreSQL and SQL Server

  4. 可以映射一对一,一对多,多对多等多种关系。

  5. 性能高。通过Emit反射IDataReader的序列队列,来快速的得到和产生对象,性能不错。

当然最重要的是使用起来非常的方便。在我们上面代码基础上,引入Dapper后,你会发现变得不一样了这里我们先加一个实体如下所示:
MySqlConnection被扩展了更多的方法,这些都是Dapper所带来的

如果你想用参数,也很简单,如下所示:

在这里我就不讲很复杂的东西,只是简单的引导你们怎么使用mysql和Dapper,希望大家多敲一敲代码,里面还有更多东西等你们探索。

总结:现在敲代码越来越方便了,以前还要自己去敲各种helper,现在别人都给你封装好了,你自己去使用就可以,可以说什么很方便了

但是不能因此不去探索这些东西的原理,不去探索,你只是敲代码的机器,探索了,你的代码就代入了你的思想和灵魂,我以前和大家一样

每天就是各种增删改查,各种copy,几年下来,东西没学到多少,年龄大了,更不好找工作。

各位别嫌弃我废话太多,毕竟我们程序员是孤独的。

原文链接:https://www.cnblogs.com/dengbo/p/11622900.html


.NET社区新闻,深度好文,欢迎访问公众号文章汇总 http://www.csharpkit.com

asp.net core 使用Mysql和Dapper相关推荐

  1. mysql和asp.net_asp.net core 使用Mysql和Dapper

    序曲:学习编程最好的方式就是敲代码,没有比这个更好的方法,哪怕你看了上百G的视频,都不如你自己敲几行代码更为有效.还有要记得敲完代码然后写一篇随笔来记录一下你所学所想. 大家都知道,.netcore是 ...

  2. ASP.NET Core 实战:基于 Dapper 扩展你的数据访问方法

    ASP.NET Core 实战:基于 Dapper 扩展你的数据访问方法 一.前言 在非静态页面的项目开发中,必定会涉及到对于数据库的访问,最开始呢,我们使用 Ado.Net,通过编写 SQL 帮助类 ...

  3. abp mysql .net core_ABP Asp.Net Core 集成 MySql 数据库

    ASP.NET Boilerplate(简称ABP)是.Net平台下一个很流行的DDD框架,该框架已经为我们提供了大量的函数,非常方便与搭建企业应用.官方文档:http://www.aspnetboi ...

  4. docker4dotnet #3 在macOS上使用Visual Studio Code和Docker开发asp.net core和mysql应用

    .net猿遇到了小鲸鱼,觉得越来越兴奋.本来.net猿只是在透过家里那田子窗看外面的世界,但是看着海峡对岸的苹果园越来越茂盛,实在不想再去做一只宅猿了.于是,.net猿决定搭上小鲸鱼的渡轮到苹果园去看 ...

  5. 【面试】ASP.NET Core+Redis+Mysql面试题答案

    .NET Core 1.如何在ASP.NET Core中激活Session功能   写的好啊,Inb哥,我是废物 2.什么是中间件   中间件是介于应用系统和系统软件之间的一类软件,它使用系统软件所提 ...

  6. ASP.NET Core 使用MySQL(Database First)

    安装MySql.Data.EntityFrameworkCore Install-Package MySql.Data.EntityFrameworkCore 安装Microsoft.EntityFr ...

  7. ASP.NET Core 开发-Entity Framework (EF) Core 1.0 Database First

    ASP.NET Core 开发-Entity Framework Core 1.0 Database First,ASP.NET Core 1.0 EF Core操作数据库. Entity Frame ...

  8. ASP .NET Core MVC Entity Framework 旧书交易网站

    代码在GitHub仓库:zhang0peter/Old-Book-Shop-System: Old Book Shop System ASP .Net Core MVC MySQL e-commerc ...

  9. ASP.NET Core CMS管理后台

    ASP.NET Core+LayUI+MySql CMS管理后台,主要功能包括 登录.修改密码,账号管理,菜单管理,角色权限管理等 由于工作之外,抽时间写的,用于学习交流,请慎重用于生产环境 项目概要 ...

最新文章

  1. VIM技巧:显示行号
  2. hdu 2065DP
  3. 一分钟检测应用状态 | 企业应用健康扫描中心发布
  4. fpga芯片架构设计与实现 pdf_FPGA设计的8大重要知识点,你都get了吗
  5. jetty 通过配置文件嵌入式启动web服务
  6. “毕设导师互选系统”项目产品宣传推广方案
  7. opencv连续读图
  8. Java的几个同步辅助类
  9. 学习指南!美国java程序员要求
  10. 威纶通宏开机后使用初始化宏指令_你按下电脑开机键后,电脑都干了些什么?...
  11. Mac基础操作:如何用启动台来查看和打开App
  12. BZOJ 1001 平面图转对偶图
  13. Android PackageManager详解
  14. 80286保护模式和实模式的基础概念
  15. 免费的艺术二维码生成器
  16. android应用实现重启系统
  17. PLSQL的JOB启动与停止(可视化操作)
  18. 学生专用计算机怎样开启关机,怎么设置电脑自动关机?
  19. 快速减肥的30种方法
  20. React的Render的简单实现

热门文章

  1. 【SQL基础】T-SQL函数类型——元数据函数
  2. vim cheat-sheet
  3. wepy学习笔记之环境搭建
  4. Oracle 12C CDB、PDB常用管理命令
  5. 3、AngularJS2 架构
  6. spring 基于java的配置
  7. Nginx+Tomcat动静态资源分离
  8. #抵抗3#(#Resistance 3#) 绝对值得体验的冒险历程
  9. 4.WCF事务【Transaction】
  10. 今天换了ubuntu10.04