首页 > 解决方案 > 带有 dotnet ef 错误的迁移:无法创建“MyClass”类型的对象

问题描述

我正在尝试使用 dotnet ef migrations add MyMigration 进行迁移,但 shell 返回错误:无法创建“AuthDbContext”类型的对象。有关设计时支持的不同模式,请参阅https://go.microsoft.com/fwlink/?linkid=851728

这是我的 AuthDbContext.cs 文件:

using Auth.Data.Models;
using Microsoft.AspNetCore.Identity.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore;

namespace Auth.Data
{
public class AuthDbContext : IdentityDbContext<User>
{
    private readonly string connStr;

    //public DbSet<User> Users { get; set; }

    public AuthDbContext(DbContextOptions<AuthDbContext> options) : base(options)  //string connStr)
    {
        //this.connStr = connStr;
    }

    protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
    {
        // string connStr = "";
        // connStr = "";
        // if (!optionsBuilder.IsConfigured)
        // {
        //    optionsBuilder
        //        .EnableSensitiveDataLogging(true)
        //        .UseSqlServer(connStr);
        // }
    }

    protected override void OnModelCreating(ModelBuilder modelBuilder)
    {
        modelBuilder.HasDefaultSchema("auth");
        //modelBuilder.Entity<User>().HasKey(p => new { p.User_id });
        base.OnModelCreating(modelBuilder);
    }
    


 }
}

有人可以帮我理解吗?谢谢。

标签: c#database-migration

解决方案


您忘记添加此行

base.OnConfiguring(optionsBuilder);

EF Core 无法完成上下文实例化。


推荐阅读