C# 如何在定制服务中插入日志记录程序
我有进口服务 在方法ConfigureServices中的StartUp类中,我将其用作C# 如何在定制服务中插入日志记录程序,c#,asp.net-core,C#,Asp.net Core,我有进口服务 在方法ConfigureServices中的StartUp类中,我将其用作 services.AddImportExportService(Configuration.GetConnectionString("DefaultConnection")); 扩展方法AddImportExportService: public static class IServiceCollectionExtension { public static IServiceCol
services.AddImportExportService(Configuration.GetConnectionString("DefaultConnection"));
扩展方法AddImportExportService:
public static class IServiceCollectionExtension
{
public static IServiceCollection AddImportExportService(this IServiceCollection services,
string connString,
ILogger<ImportExportService> logger
)
{
services.AddTransient<IImportExportService, ImportExportService>(provider => new ImportExportService(connString));
return services;
}
}
公共静态类IServiceCollectionExtension
{
公共静态IServiceCollection AddImportExportService(此IServiceCollection服务,
字符串连接字符串,
ILogger记录器
)
{
AddTransient(provider=>newimportExportService(connString));
返回服务;
}
}
ExportImportService使用日志记录。
我尝试将登录服务作为参数注入构造函数中,如ILoger logger
,但构造函数只包含一个参数和扩展方法AddImportExportService get error
如何在ExportImportService中注入日志记录?谢谢您仅使用一个参数显示扩展名。记录器是如何使用的,在哪里使用的?为什么
AddImportExportService
接受ILogger
?是否应该从容器中解决此问题?我可能也会看一看。@Nkosi我在服务中有方法,如果错误我需要在日志中记录错误或成功,比如logger.LogInformation(e.Message)代码>谢谢。我不知道我能用这种方式呼叫所需服务。
services.AddTransient<IImportExportService, ImportExportService>(provider => new ImportExportService(connString));
services
.AddTransient<IImportExportService, ImportExportService>(
provider => new ImportExportService(connString, provider.GetRequiredService<ILogger<ImportExportService>>()));
public static IServiceCollection AddImportExportService(
this IServiceCollection services,
string connString)