asp.net mvc连接mysql_ASP.Net MVC连接MySQL和Code First的使用
首先要準(zhǔn)備一下的工具作為環(huán)境MySQL Community Server 5.7.x
My Workbench 6.3
VS2017
新建一個(gè)項(xiàng)目,NetMySQLCodeFirst
選擇MVC,再選擇無(wú)用戶驗(yàn)證
然后通過(guò)NuGet包管理器安裝三個(gè)包,安裝最新穩(wěn)定版本即可EntityFramework
MySql.Data
MySql.Data.Entity
緊接著在Models文件里面新建一個(gè)類Lexan
public?Guid?LexanID?{?get;?set;?}????????public?string?LexanName?{?get;?set;?}????????public?int?LexanAge?{?get;?set;?}????????public?string?LexanImage?{?get;?set;
再繼續(xù)在Models文件里面建一個(gè)類Category
public?Guid?CategoryID?{?get;?set;?}????????public?string?CategoryName?{?get;?set;?}
繼續(xù)在Models文件里面建一個(gè)類CodeFirstContext
public?DbSet?Lexans?{?get;?set;?}public?DbSet?Categories?{?get;?set;?}
在根目錄下修改Web.Config文件,并在system.web的標(biāo)簽前面添加如下代碼,表示連接.Net 連接MySQL字符串,密碼是自己的root的登陸密碼,根據(jù)實(shí)際情況修改
完成上面的工作以后,接下來(lái)做的工作就是在NuGet的控制臺(tái)去,更新我們的數(shù)據(jù)庫(kù)代碼后的連接設(shè)置實(shí)現(xiàn)我們通過(guò)LexanCodeFirstDb的數(shù)據(jù)庫(kù)名已啟用并將添加新的遷移。為此, 我們使用軟件包管理器控制臺(tái)。在控制臺(tái)執(zhí)行如下命令
enable-migrations
這個(gè)時(shí)候因?yàn)閳?zhí)行了enable-migrations命令,項(xiàng)目中會(huì)自動(dòng)的生成Migrations文件夾,然后到這個(gè)文件夾里面去修改Configuration類里面的Configuration方法,添加如下的代碼
AutomaticMigrationsEnabled?=?true;
SetSqlGenerator("MySql.Data.MySqlClient",?new?MySql.Data.Entity.MySqlMigrationSqlGenerator());
再繼續(xù)往NuGet的控制臺(tái)里輸入一下代碼,執(zhí)行數(shù)據(jù)的遷移,有提示輸入名字,這個(gè)名字和項(xiàng)目名字是不同的
add-migration
mysql的數(shù)據(jù)庫(kù)引擎代碼端使用默認(rèn)創(chuàng)建的結(jié)構(gòu), 主鍵也會(huì)為提到的區(qū)域返回此錯(cuò)誤。作為此解決方案, 我們將再次升級(jí)我們的上下文模型如下。以前, 類似于我們?cè)谏厦嬖O(shè)置的 SqlGenerator, 然后去修改codeFirstContext類,如下所示
繼續(xù)在NuGet控制臺(tái)執(zhí)行如下代碼更新數(shù)據(jù)庫(kù)update-database
到這里我們的工作全部完成了,我們看看沒(méi)有遷移時(shí)候MySQL數(shù)據(jù)
再來(lái)看看錢以后的數(shù)據(jù)庫(kù)
成功了!
總結(jié)
以上是生活随笔為你收集整理的asp.net mvc连接mysql_ASP.Net MVC连接MySQL和Code First的使用的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: mysql query plan_MyS
- 下一篇: mysql crash 如何定位_MyS