¿Qué pasa con DbContextOptions al invocar un nuevo DbContext?

No estoy usando DI y simplemente quiero invocar un DbContext desde mi controlador. Estoy luchando por descubrir cuáles deberían ser las 'opciones'.

ApplicationDbContext.cs

    public class ApplicationDbContext : IdentityDbContext<ApplicationUser>
{

    public DbSet<Gig> Gigs { get; set; }
    public DbSet<Genre> Genres { get; set; }


    public ApplicationDbContext(DbContextOptions<ApplicationDbContext> options)
        : base(options)
    {
    }

    protected override void OnModelCreating(ModelBuilder builder)
    {
        base.OnModelCreating(builder);
        // Customize the ASP.NET Identity model and override the defaults if needed.
        // For example, you can rename the ASP.NET Identity table names and more.
        // Add your customizations after calling base.OnModelCreating(builder);
    }
}

GigsController.cs

    public class GigsController : Controller
{
    private ApplicationDbContext _context;

    public GigsController()
    {
        _context = new ApplicationDbContext();
    }


    public IActionResult Create()
    {
        var viewModel = new GigFormViewModel
        {
            Genres = _context.Genres.ToList()
        };


        return View(viewModel);
    }
}

El problema surge en mi constructor GigsController:

_context = new ApplicationDbContext();

Estoy produciendo un error porque necesito pasar algo al ApplicationDbContext. No se proporciona ningún argumento que corresponda al parámetro formal requerido 'opciones' de 'ApplicationDbContext.ApplicationDbContext (DbContextOptions)'

Intenté crear un constructor predeterminado en ApplicationDbContext derivado de base (), pero tampoco funcionó.

En mi startup.cs, configuré el ApplicationDbContext

        public void ConfigureServices(IServiceCollection services)
    {
        // Add framework services.
        services.AddDbContext<ApplicationDbContext>(options =>
            options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection")));

        services.AddIdentity<ApplicationUser, IdentityRole>()
            .AddEntityFrameworkStores<ApplicationDbContext>()
            .AddDefaultTokenProviders();

        services.AddMvc();

        // Add application services.
        services.AddTransient<IEmailSender, AuthMessageSender>();
        services.AddTransient<ISmsSender, AuthMessageSender>();
    }

Respuestas a la pregunta(2)

Su respuesta a la pregunta