我有导入导出服务。
在方法ConfigureServices 的StartUp 类中,我将其用作
services.AddImportExportService(Configuration.GetConnectionString("DefaultConnection"));
Run Code Online (Sandbox Code Playgroud)
扩展方法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;
}
}
Run Code Online (Sandbox Code Playgroud)
ExportImportService 使用日志记录。我尝试将日志记录作为构造函数中的参数注入ILoger<ImportExportService> logger,但构造函数仅包含一个参数,并且扩展方法 AddImportExportService 出现错误。
如何在ExportImportService中注入Logging?谢谢
services.AddTransient<IImportExportService, ImportExportService>(provider => new ImportExportService(connString));
Run Code Online (Sandbox Code Playgroud)
应该
services
.AddTransient<IImportExportService, ImportExportService>(
provider => new ImportExportService(connString, provider.GetRequiredService<ILogger<ImportExportService>>()));
Run Code Online (Sandbox Code Playgroud)
假设 的构造函数ImportExportService有两个参数。那么扩展只需要两个参数:
public static IServiceCollection AddImportExportService(
this IServiceCollection services,
string connString)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1852 次 |
| 最近记录: |