【发布时间】:2020-05-18 23:22:07
【问题描述】:
我想知道如何将 ILogger 注入到由 Java 客户端通过 Thrift 调用的 ASP.NET Core 应用程序中的函数中。
所以我想做一个高级代码演示:
// ExecuteRequest is called by java client through Thrift
public class ThriftLayer
{
...
public string ExecuteRequest(...params)
{
...
var result = RequestFunc1(...params);
...do processing
return result;
}
...
}
// Contains request functions called by ExecuteRequest
public class ServerRequestHandler
{
...
public string RequestFunc1(...params)
{
return TaskFunc1(...params);
}
....
}
// Functions in this class are called by both the Thrift layer(called by ServerRequestHandler) as well as a Console application
// In Console applications, we can inject the ILogger at Startup - No issues there.
public class TaskFunctions
{
private readonly ILogger<TaskFunctions> _logger;
public TaskFunctions(ILogger<TaskFunctions> logger)
{
_logger = logger;
}
public string TaskFunc1(...params)
{
_logger.logInfo("<log message>");
...do processing
return stringResult;
}
}
所以我想知道如何在从 Thrift 调用时将 ILogger 注入 TaskFunctions?
【问题讨论】:
标签: c# asp.net-core .net-core thrift