Abp vNext 使用Mysql数据库
Posted HUGO.CM
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Abp vNext 使用Mysql数据库相关的知识,希望对你有一定的参考价值。
1.项目 EntityFrameworkCore 添加引用 Volo.Abp.EntityFrameworkCore.mysql。
2.在 EntityFrameworkCoreModule.cs 中代码 typeof(AbpEntityFrameworkCoreSqlServerModule) 修改为 typeof(AbpEntityFrameworkCoreMySQLModule) 。
[DependsOn( typeof(MyProjectDomainModule), typeof(AbpIdentityEntityFrameworkCoreModule), typeof(AbpIdentityServerEntityFrameworkCoreModule), typeof(AbpPermissionManagementEntityFrameworkCoreModule), typeof(AbpSettingManagementEntityFrameworkCoreModule), typeof(AbpEntityFrameworkCoreMySQLModule), typeof(AbpBackgroundJobsEntityFrameworkCoreModule), typeof(AbpAuditLoggingEntityFrameworkCoreModule), typeof(AbpTenantManagementEntityFrameworkCoreModule), typeof(AbpFeatureManagementEntityFrameworkCoreModule) )]
3.在 EntityFrameworkCoreModule.cs 中 修改 options.UseSqlServer() 为 options.UseMySQL()。
public override void ConfigureServices(ServiceConfigurationContext context) { context.Services.AddAbpDbContext<MyProjectDbContext>(options => { /* Remove "includeAllEntities: true" to create * default repositories only for aggregate roots */ options.AddDefaultRepositories(includeAllEntities: true); }); Configure<AbpDbContextOptions>(options => { /* The main point to change your DBMS. * See also MyProjectMigrationsDbContextFactory for EF Core tooling. */ options.UseMySQL(); }); }
4.在 DbContextModelCreatingExtensions.cs 中 ConfigureMyProject 方法 添加 builder.UseMySQL(); 代码。
public static void ConfigureMyProject(this ModelBuilder builder) { Check.NotNull(builder, nameof(builder)); /* Configure your own tables/entities inside here */ //builder.Entity<YourEntity>(b => //{ // b.ToTable(MyProjectConsts.DbTablePrefix + "YourEntities", MyProjectConsts.DbSchema); // //... //}); builder.UseMySQL(); }
5. 项目 EntityFrameworkCore.DbMigrations 中 MigrationsDbContextFactory.cs 修改 .UseSqlServer 为 .UseMySQL。
public MyProjectMigrationsDbContext CreateDbContext(string[] args) { MyProjectEfCoreEntityExtensionMappings.Configure(); var configuration = BuildConfiguration(); var builder = new DbContextOptionsBuilder<MyProjectMigrationsDbContext>() .UseMySql(configuration.GetConnectionString("Default")); return new MyProjectMigrationsDbContext(builder.Options); }
UseMySql
以上是关于Abp vNext 使用Mysql数据库的主要内容,如果未能解决你的问题,请参考以下文章
Abp vNext抽茧剥丝01 使用using临时更改当前租户
Abp vnext 使用sql2005sql2008等脚本报错解决
ABP vNext报错:An unhandled exception occurred while processing the request.求大佬解惑??