Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/277.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在定制服务中插入日志记录程序_C#_Asp.net Core - Fatal编程技术网

C# 如何在定制服务中插入日志记录程序

C# 如何在定制服务中插入日志记录程序,c#,asp.net-core,C#,Asp.net Core,我有进口服务 在方法ConfigureServices中的StartUp类中,我将其用作 services.AddImportExportService(Configuration.GetConnectionString("DefaultConnection")); 扩展方法AddImportExportService: public static class IServiceCollectionExtension { public static IServiceCol

我有进口服务

在方法ConfigureServices中的StartUp类中,我将其用作

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)