首页 > 解决方案 > 连接到 AWS 时表“xxxx.AspNetUsers”不存在

问题描述

我正在使用带有 EntityFramework 的 ASP.NET Web API Core 2.0 连接到 AWS MariaDB 实例。

我还有一个具有完全相同架构的本地 MariaDB 实例。

当我使用本地连接运行 Web API 时,一切正常。

连接到 AWS 时,我得到表 'xxxxx.AspNetUsers' 不存在。(xxxxx 是数据库名称)

我什至将以下内容添加到 ApplicationDbContext:

public class ApplicationDbContext : IdentityDbContext<AppUser>
{
    public ApplicationDbContext(DbContextOptions options)
          : base(options)
    {
    }
    public DbSet<AppUser> AppUsers { get; set; }

    public DbSet<Profile> Profiles { get; set; }

    protected override void OnModelCreating(ModelBuilder builder)
    {
        builder.Entity<AppUser>().ToTable("aspnetusers");
        builder.Entity<Profile>().ToTable("profiles");
        base.OnModelCreating(builder);
    }
}

注意对配置文件的 api 调用工作正常。

如何设置这样 EntityFramework 不查找“xxxxx.table”而只查找“table”?还可以识别“aspnetusers”

 services
            .AddDbContext<ApplicationDbContext>(
                options => options.UseMySql(Configuration.GetConnectionString("DefaultConnection")))
            .AddUnitOfWork<ApplicationDbContext>();

编辑:

本地与 aws 的连接字符串格式

当地的:

服务器=localhost;用户ID=root;密码=xxxxxxx;数据库=CoolAppDB

aws:

服务器=coolappdb.1234564798.us-west-2.rds.amazonaws.com;端口=3306;用户ID=用户名;密码=xxxxxxx;数据库=coolappdb

标签: entity-frameworkasp.net-web-apiasp.net-coremariadbamazon-rds

解决方案


推荐阅读