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 開始自己的項目,這個會在以后的文章中來講!