Implementovali sme dependency injection v mojej žiadosti. A ja som sa konfigurácia služby nasledovne.
IConfiguration configuration = context.Configuration;
services.AddDbContext<ApplicationDbContext>(options =>
{
options.UseSqlServer(configuration.GetConnectionString("DefaultConnection"));
});
services.ConfigureRailIncApi(configuration);
services.Configure<EmailSettings>(configuration.GetSection("EmailSettings"));
services.AddSingleton(configuration);
services.AddSingleton(Logger);
services.AddSingleton<Application>();
services.AddSingleton<ServiceManager>();
Toto všetko funguje, okrem teraz rámca je prihlásení ku konzole, vrátane obsahu na všetky otázky, zaslané do databázy.
Nejako vnútorného zapisovania bola povolená, ale nevidím, kde som zapnutý.
Ako môžem zabrániť .ČISTÝ prihlásiť na obrazovke?
Poznámka: Logger
je inštanciou vlastné logovanie triedy ConsoleLogger
. Táto trieda mocnejšiu ILogger
alebo použite nič iné od .ČISTÝ. Je to jednoducho vlastné triedy, ktoré tiež prihlási na konzole a súborom. Prihlásenie z tohto logger je v poriadku. A ja som sa potvrdil .ČISTÉ záznamy nie sú odoslané do tejto triedy.
Aktualizácia:
Tu je môj kód, ktorý konfiguruje hosť.
public void Configure(string[] args, Action< HostBuilderContext, IServiceCollection> configureServices, Action<IHostBuilder> configureHost)
{
IHostBuilder hostBuilder = Host.CreateDefaultBuilder(args);
hostBuilder.ConfigureServices((context, services) =>
{
services.AddSingleton(this);
configureServices(context, services);
});
configureHost(hostBuilder);
AppHost = hostBuilder.Build();
}
A tu je kód, ktorý volá.
ApplicationServices appServices = new();
appServices.Configure(args, (context, services) =>
{
IConfiguration configuration = context.Configuration;
services.AddDbContext<ApplicationDbContext>(options =>
{
options.UseSqlServer(configuration.GetConnectionString("DefaultConnection"));
});
services.ConfigureRailIncApi(configuration);
services.Configure<EmailSettings>(configuration.GetSection("EmailSettings"));
services.AddSingleton(configuration);
services.AddSingleton(Logger);
services.AddSingleton<Application>();
services.AddSingleton<ServiceManager>();
},
builder =>
{
});
ConfigureLogging
predpokladálogging
parameter bol typHostBuilderContext
ale bol som schopný prinútiť ho, aby saILoggingBuilder
. Vďaka za vašu pomoc.