ABP-VNext 用戶權限管理系統實戰01---AuthServer服務遷移數據庫到mysql

一、從github上獲取源碼後修改命名空間

下載dome後修改解決方案名爲Bridge。

 

二、默認是連接sqlserver的,需要修改爲可以連接mysql

修改appsettings.json文件的ConnectionStrings參數,準備一個可以連接的mysql,新建數據庫bridge

{
  "ConnectionStrings": {
    "Default": "Server=xxx.xxx.xx.xx;Port=3306; Database=bridge; User=root; Password=xxxx;"
  }
}

 

 

三、修改類AuthServerDbContextFactory,使用mysql數據庫

using System.IO;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Design;
using Microsoft.Extensions.Configuration;
using Pomelo.EntityFrameworkCore.MySql.Infrastructure;

namespace Bridge.AuthServer.Host.EntityFrameworkCore
{
    public class AuthServerDbContextFactory : IDesignTimeDbContextFactory<AuthServerDbContext>
    {
        public AuthServerDbContext CreateDbContext(string[] args)
        {
            var configuration = BuildConfiguration();
            var builder = new DbContextOptionsBuilder<AuthServerDbContext>();
            builder.UseMySql(configuration.GetConnectionString("Default"),
                  ServerVersion.AutoDetect(configuration.GetConnectionString("Default")));

            return new AuthServerDbContext(builder.Options);
        }

        private static IConfigurationRoot BuildConfiguration()
        {
            var builder = new ConfigurationBuilder()
                .SetBasePath(Directory.GetCurrentDirectory())
                .AddJsonFile("appsettings.json", optional: false);

            return builder.Build();
        }
    }
}

 修改AuthServerHostModule.cs文件

 因爲我係統中沒有用到es,所以將項目中的es也注掉:Program.cs

 

 

四、執行數據庫遷移命令

1、刪除原來的Migrations文件,工具---》NuGet包管理器---》程序包管理器控制檯

選中默認項目:Bridge.AuthServer.Host,並執行:Add-Migration bridge_init

 再執行:Update-Database 20231017011137_bridge_init

 可以看到數據表已遷移

 

五、啓動Bridge.AuthServer.Host服務

報錯: Could not find the bundle file '/libs/abp/core/abp.css' for the bundle 'Basic.Global'!

解決方案:找到授權的目錄執行命令

E:\3--GitHub\bridge\applications\AuthServer.Host>npm config set proxy false

E:\3--GitHub\bridge\applications\AuthServer.Host>npm cache clean --force

E:\3--GitHub\bridge\applications\AuthServer.Host>npm config set registry http://registry.npmjs.org/

E:\3--GitHub\bridge\applications\AuthServer.Host>npm config set registry https://registry.npmjs.org/

E:\3--GitHub\bridge\applications\AuthServer.Host>abp install-libs

成功後再次啓動Bridge.AuthServer.Host服務,成功的頁面如下:

到此我們最重要的授權服務就好了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章