Я пытаюсь запустить команду addigration ef core для моего консольного приложения, но получаю ошибку "Невозможно создать объект типа 'DbContext'. Информацию о различных шаблонах, поддерживаемых во время разработки, см. В * 1002. * каждый раз.
У меня есть два проекта ConsoleApp и Data, в которые я добавил свой DbContext.
Я добавил .NET Generic Host :
namespace ConsoleApp
{
class Program
{
static void Main(string[] args)
{
CreateHostBuilder(args).Build().Run();
}
private static IHostBuilder CreateHostBuilder(string[] args)
{
return new HostBuilder()
.ConfigureAppConfiguration((hostContext, configApp) =>
{
configApp
.AddJsonFile("appsettings.json", optional: true, reloadOnChange: true)
.AddJsonFile($"appsettings.{hostContext.HostingEnvironment.EnvironmentName}.json",
reloadOnChange: true,
optional: true)
.AddEnvironmentVariables();
})
.ConfigureServices((hostContext, services) =>
{
if (hostContext.HostingEnvironment.IsDevelopment())
{
// Development service configuration
}
else
{
// Non-development service configuration
}
services.AddDbContext<DbContext>(options =>
options.UseNpgsql(hostContext.Configuration.GetConnectionString("DbContext")));
services.AddLogging(opt =>
{
opt.AddConsole();
opt.AddDebug();
});
})
.UseConsoleLifetime();
}
}
}
вроде записи здесь , но у меня это не работает.
И я не хочу использовать IDesignTimeDbContextFactory
Команда:dotnet ef migrations add Init -s ConsoleApp -p Data
Пожалуйста, помогите мне