ABP框架中使用MySQL數據庫


首先說明:本文使用Mysql這塊拷貝自:https://blog.csdn.net/tangmou_ren/article/details/84856892,感謝作者。

1.移除SQL Server的Nuget包

打開程序包管理器控制台,並選中xxx.EntityFrameworkCore

執行下面兩條命令:

uninstall-package microsoft.entityframeworkcore.design
uninstall-package microsoft.entityframeworkcore.sqlserver

2.安裝MySQL的Nuget包

執行下面兩條命令:

install-package pomelo.entityframeworkcore.mysql.design
install-package pomelo.entityframeworkcore.mysql

3.更改配置文件

在解決方案的EntityFrameCore層找到DbContextConfigurer文件,並做如下修改:

4.修改數據庫連接字符串

在appsetting.json文件中修改數據庫連接字符串:

"Default": "Server=localhost;Port=3306;Database=你的數據庫名;Uid=數據庫用戶名;Pwd=密碼;"

5.添加數據遷移

先說明下:這個步驟需要先將xxx.Web.Host設為啟動項,否則會提示xxx.Web.Host不是啟動項錯誤信息。

刪除EntityFrameCore層中Migrations文件夾里的所有文件,別刪除Migrations文件夾。

然后重新生成解決方案,接着打開程序包管理器控制台,選中.EntityFrameworkCore,輸入以下命令:

Add-Migration Init

此時你的Migrations文件夾里會新增幾個文件,接着輸入命令:

Update-Database

至此,mysql數據庫就會自動生成數據庫和響應的表。

 


 

下面說下如何新增表?

提前說明:這塊參考自:https://www.cnblogs.com/dacaba/p/9910726.html,感謝作者。

我們是基於CodeFirst開發的。所以需要先定義實體,然后再進行遷移,最終生成表結構。

實體如下:

namespace AbpDemo.Persons
{
    public class Person : FullAuditedEntity
    {
        public string Name { get; set; }
        public int Sex { get; set; }
    }
}

然后再在基礎層(EntityFrameworkCore)的類AbpDemoDbContext添加數據集Persons

public DbSet<Person> Persons { get; set; }

最后執行Add-Migration Init xxxx和Update-Database命令就可以了。其中xxxx你可以隨便命名,但最好見名知意。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM