ABP 5.0 项目模板初始化(MySQL)
1. 安装ABP CLI
使用以下命令安排ABP CLI:
dotnet tool install -g Volo.Abp.Cli
已经安装,你可以使用以下命令更新到最新版本:
dotnet tool update -g Volo.Abp.Cli
2. 创建新项目
- ABP CLI创建一个新项目(默认Angular + EF)
abp new Acme.BookStore -u angular --separate-identity-server --mobile react-native
-
此命令还会在解决方案文件夹内创建一个React Native移动应用程序. 如果你不想要它,可以安全地删除它或从
abp new命令中删除--mobile react-native选项, 以使其完全不包含在解决方案中. -
-u指定UI框架, 本例中是angular. -
--separate-identity-server参数用于将Identity服务器应用程序与API主机应用程序分隔开. 如果未指定,则服务器上将只有一个端点.
- 项目结构:
3. 数据库切换为MySQL
-
打开程序包管理器控制台,默认项目选择为
YourProjectName.EntityFrameworkCore先卸载自带的SqlServer依赖包:
Uninstall-Package Volo.Abp.EntityFrameworkCore.SqlServer再安装MySQL依赖包:
Install-Package Volo.Abp.EntityFrameworkCore.MySQL -
在文件中将SqlServe引用项替换为MySQL引用项
-
项目
YourProjectName.EntityFrameworkCore下-
BookStoreEntityFrameworkCoreModule.cs内,DependsOnAttribute 上将typeof(AbpEntityFrameworkCoreSqlServerModule)替换为typeof(AbpEntityFrameworkCoreMySQLModule)(并且替换using Volo.Abp.EntityFrameworkCore.SqlServer;为using Volo.Abp.EntityFrameworkCore.MySQL;) -
BookStoreEntityFrameworkCoreModule.cs中,将UseSqlServer()替换成UseMySQL() -
在
BookStoreDbContextFactory中//Before: /*var builder = new DbContextOptionsBuilder<BookStoreDbContext>() .UseSqlServer(configuration.GetConnectionString("Default"));*/ //After: //8, 0, 19 为电脑中MySQL 版本号 var builder = new DbContextOptionsBuilder<BookStoreDbContext>() .UseMySql(configuration.GetConnectionString("Default"), new MySqlServerVersion(new System.Version(8, 0, 19)));
-
-
-
替换项目中所有的
appsettings.json中的连接字符串/* "ConnectionStrings": { "Default": "Server=(LocalDb)\\MSSQLLocalDB;Database=TodoApp;Trusted_Connection=True" } */ "ConnectionStrings": { "Default": "Database=***;Data Source=localhost;User Id=****;Password=***;CharSet=utf8;port=***;SslMode=none;" } -
启动模板使用
Entity Framework Core的Code First迁移-
设置
YourProjectName.HttpApi.Host为启动项目 -
打开程序包管理器控制台,默认项目选择为
YourProjectName.EntityFrameworkCore
-
输入指令
Add-Migration InitialCreate -
输入指令
Update-Database -
设置
Acme.BookStore.DbMigrator为启动项目,并运行
-
4. 运行应用程序
确保 YourProjectName.IdentityServer 是启动项目,运行应用程序后会在你的浏览器打开一个 login 页面.




浙公网安备 33010602011771号