Abp vNext 實戰 - 2修改DBMS運行項目


Abp vNext 項目運行起來

為了方便使用Sqlite數據庫

修改項目為 Sqlite 數據庫(改成Mysql PostgreSQL 等都是一樣的操作)

1

打開DG.Blog.EntityFrameworkCore項目文件

添加

<PackageReference Include="Volo.Abp.EntityFrameworkCore.Sqlite" Version="3.0.4" />    

或者 nuget 添加

Install-Package Volo.Abp.EntityFrameworkCore.Sqlite -Version 3.0.4  

2

打開DG.Blog.EntityFrameworkCore 項目

打開BlogEntityFrameworkCoreModule.cs 文件

刪除 DependsOn attribute 上的typeof(AbpEntityFrameworkCoreSqlServerModule),
添加 typeof(AbpEntityFrameworkCoreSqliteModule) (
替換 using Volo.Abp.EntityFrameworkCore.SqlServer; 為 using Volo.Abp.EntityFrameworkCore.Sqlite;

[DependsOn(
        ...
        //typeof(AbpEntityFrameworkCoreSqlServerModule), //注釋掉這里換成下面一行
        typeof(AbpEntityFrameworkCoreSqliteModule),
        ...
        ]

打開DG.Blog.EntityFrameworkCore.DbMigrations 項目

打開 BlogMigrationsDbContextFactory.cs 文件
修改這里為

public BlogMigrationsDbContext CreateDbContext(string[] args)
{
    BlogEfCoreEntityExtensionMappings.Configure();

    var configuration = BuildConfiguration();

    var builder = new DbContextOptionsBuilder<BlogMigrationsDbContext>()
        //.UseSqlServer(configuration.GetConnectionString("Default"));//注釋掉這里換成下面一行
        .UseSqlite(configuration.GetConnectionString("Default"));

    return new BlogMigrationsDbContext(builder.Options);
}

打開DG.Blog.Web 和 DG.Blog.DbMigrator 項目

appsettings.json 修改連接字符串

"ConnectionStrings": {
    "Default": "Data Source=dgblog.db;"
  }

初始化數據庫

1 生成遷移文件

打開DG.Blog.EntityFrameworkCore.DbMigrations 項目

刪除掉 Migrations 文件夾

打開 程序包管理器控制台 選擇默認項目為 DG.Blog.EntityFrameworkCore.DbMigrations
執行命令 Add-Migration "Initial"

PM> Add-Migration "Initial"
Build started...
Build succeeded.
To undo this action, use Remove-Migration.

生成了新的 Migrations 文件夾

2 遷移數據庫

運行 DG.Blog.DbMigrator 項目創建數據庫和初始種子數據.
也可以 執行命令 update-database
注意要 先設置 DG.Blog.Web 為啟動項

PM> update-database
Build started...
Build succeeded.
Applying migration '20200721005959_Initial'.
Done.

生成了數據庫 在 DG.Blog.DbMigrator 項目根目錄下 dgblog.db

運行項目

啟動

設置 DG.Blog.Web 作為啟動項

運行

輸入用戶名 admin,密碼 1q2w3E* 登錄到應用程序.

這里如果你用的是命令行遷移數據庫 update-database 登錄失敗會失敗,因為沒有些人原子數據,就是初始化數據,所以需要 運行 DG.Blog.DbMigrator 項目。這里又有個注意的地方是數據庫生成的位置 改成:

打開DG.Blog.DbMigrator 項目
appsettings.json 修改連接字符串

"ConnectionStrings": {
    "Default": "Data Source=..\\DG.Blog.Web\\dgblog.db;"
  }

或者生成好了拷貝到 DG.Blog.Web 去都可以。

數據庫:

運行后效果如下圖:

查看API文檔

瀏覽器訪問 https://localhost:44318/swagger 可以訪問Api 文檔


好了,已經運行起來了!默認是支持多租戶的。
生成了很多表和很多功能,其實我們自己開發項目時是不是用不了這么多,或者現在有些功能還用不上?所以,我們可以精簡他,也可以從一個空項目開始使用Abp 開始自己的項目,這個會在以后的文章中來講!


免責聲明!

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



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