asp.net core 使用Mysql和Dapper
序曲:學(xué)習(xí)編程最好的方式就是敲代碼,沒有比這個(gè)更好的方法,哪怕你看了上百G的視頻,都不如你自己敲幾行代碼更為有效。還有要記得敲完代碼然后寫一篇隨筆來記錄一下你所學(xué)所想。
大家都知道,.netcore是微軟一個(gè)具有歷史意義的產(chǎn)品,因?yàn)榻K于開始跨平臺(tái)了,
敲了那么多年的代碼,每次都被吐槽不能跨平臺(tái),現(xiàn)在終于開啟了跨平臺(tái)的腳步了。
既然跨平臺(tái)了,那么我們是不是可以使用mysql了,畢竟mysql的使用率是非常的高,
各種解決方案和優(yōu)化方案都非常的多。如果你不知道什么是mysql,那么你自己去百度一下。
好了,廢話太多了,我們開始來講一講如何在core上使用mysql。
第一步,當(dāng)然是引用對(duì)應(yīng)的包了
本次主要是引用兩個(gè)包,分別是
MySql.Data
Dapper
?引用成功之后,就開始敲代碼
本講解使用的是core控制臺(tái)
當(dāng)然首先你得安裝mysql到你的電腦上,或者安裝到centOs上面
windows安裝mysql,你可以看看這位的方案:https://www.cnblogs.com/xsmile/p/7753984.html
centOS7安裝mysql,你可以看看這個(gè):https://www.cnblogs.com/Jomini/p/10749657.html
本人的mysql是安裝到我的windows上的
配置你的數(shù)據(jù)庫(kù)連接,這個(gè)信息最好放在配置文件中,這次是為了演示,我就放在代碼中
//配置你的數(shù)據(jù)庫(kù)連接信息private static string ConnString = "server=192.168.1.2;userid=root;pwd=123456;port=3306;database=redenvelopes;SslMode=none";server是你的mysql安裝到的機(jī)器上的ip地址userid是mysql登錄用戶
pwd是登錄密碼
port是mysql的端口,一般情況下,mysql的默認(rèn)端口就是3306database是你的數(shù)據(jù)庫(kù)名稱SslMode是SSL模式,這里為none我們?cè)谝郧皩憇ql的時(shí)候,都習(xí)慣給自己寫一個(gè)helper,但是這里不用了,別人都幫你寫好了,你拿去直接調(diào)用即可MySqlHelper包含了豐富的api,各種增刪改查,也基本滿足你的需求了,這個(gè)和以前使用沒什么區(qū)別
這個(gè)雖好,但是不利于封裝到實(shí)體對(duì)象中,
所以我們引入了Dapper
如果學(xué)過java的人看到這個(gè),是不是感覺挺眼熟,java中有一個(gè)mapper
本人也學(xué)過java,所以有這個(gè)感覺。
Dapper是一款輕量級(jí)ORM工具
為什么選擇Dapper
輕量。只有一個(gè)文件(SqlMapper.cs)。
速度快。Dapper的速度接近與IDataReader,比DataTable好很多
支持多種數(shù)據(jù)庫(kù),包括sqlite, sqlce, firebird, oracle, MySQL, PostgreSQL and SQL Server
可以映射一對(duì)一,一對(duì)多,多對(duì)多等多種關(guān)系。
性能高。通過Emit反射IDataReader的序列隊(duì)列,來快速的得到和產(chǎn)生對(duì)象,性能不錯(cuò)。
在我們上面代碼基礎(chǔ)上,引入Dapper后,你會(huì)發(fā)現(xiàn)變得不一樣了
這里我們先加一個(gè)實(shí)體
如下所示:MySqlConnection被擴(kuò)展了更多的方法,這些都是Dapper所帶來的
?如果你想用參數(shù),也很簡(jiǎn)單,如下所示:
在這里我就不講很復(fù)雜的東西,只是簡(jiǎn)單的引導(dǎo)你們?cè)趺词褂胢ysql和Dapper,希望大家多敲一敲代碼,里面還有更多東西等你們探索。
總結(jié):現(xiàn)在敲代碼越來越方便了,以前還要自己去敲各種helper,現(xiàn)在別人都給你封裝好了,你自己去使用就可以,可以說什么很方便了
但是不能因此不去探索這些東西的原理,不去探索,你只是敲代碼的機(jī)器,探索了,你的代碼就代入了你的思想和靈魂,我以前和大家一樣
每天就是各種增刪改查,各種copy,幾年下來,東西沒學(xué)到多少,年齡大了,更不好找工作。
各位別嫌棄我廢話太多,畢竟我們程序員是孤獨(dú)的。
原文鏈接:https://www.cnblogs.com/dengbo/p/11622900.html
.NET社區(qū)新聞,深度好文,歡迎訪問公眾號(hào)文章匯總?http://www.csharpkit.com?
總結(jié)
以上是生活随笔為你收集整理的asp.net core 使用Mysql和Dapper的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: NET Core 3.0 AutoFac
- 下一篇: 10月数据库排行:Microsoft S