Судя по стактрейсу - ты передал некорректный connection string.
Где именно - хз, ты ты не скинул ссылку на конкретный файл и конкретную строку, где произошла ошибка.
Даже стактрейс не полный.
Ну и ошибку выдаёт не сваггер
UPD: нашёл. Действительно в файле Class.cs, где у тебя фабрика объявлена, ты какую-то странную строку подключения передаёшь:
using Microsoft.EntityFrameworkCore.Design;
using Microsoft.EntityFrameworkCore;
namespace WebApi.Data
{
public class ContextFactory : IDesignTimeDbContextFactory<WebApiContext>
{
public WebApiContext CreateDbContext(string[] args)
{
var optionsBuilder = new DbContextOptionsBuilder<WebApiContext>();
optionsBuilder.UseNpgsql("Data Source=blog.db");
return new WebApiContext(optionsBuilder.Options);
}
}
}
Да и вообще обращаться к этой фабрике ты не должен - она используется только для генерации миграций.
Тебе следует доставать DbContext через DI, который ты сам же и настроил:
builder.Services.AddDbContext<WebApiContext>(options =>
options.UseNpgsql(builder.Configuration.GetConnectionString("WebApiContext") ?? throw new InvalidOperationException("Connection string 'WebApiContext' not found.")));