Я написал класс импорта для приложения asp. net core 3.1. Пока этот класс вызывается только из тестов решения.
Класс принимает в качестве параметра конструктора DbContext и экземпляр ILogger:
public class WinEURXMLImport : IImportService
{
public WinEURXMLImport(AppDbContext dbContext, ILogger<WinEURXMLImport> logger)
{
this.dbContext = dbContext;
this.logger = logger;
}
public async Task Import(Stream stream, WinEURXMLImportOptions options)
{
// import code comes here
}
}
Это прекрасно работает в моем тесте project.
Теперь я хотел бы добавить доступ к этой функциональности из основного приложения. Однако я не просто хочу войти в средство ведения журнала по умолчанию, настроенное в приложении asp. net: мне нужно захватить выходные данные указанного экземпляра класса c, созданного для его отображения пользователю.
Как я могу создать экземпляр ILogger<WinEURXMLImport>
, который позволит мне получить результат журнала для указанного экземпляра c, который я передаю в дополнение к обычному регистратору (который происходит от asp. net ядро)?