C# Castle Windsor:哪个用户的组件?
我正在一个项目中使用ASP.NETMVC、CastleWindsor和Log4Net 我的日志组件中有类似的内容:C# Castle Windsor:哪个用户的组件?,c#,.net,asp.net-mvc,inversion-of-control,castle-windsor,C#,.net,Asp.net Mvc,Inversion Of Control,Castle Windsor,我正在一个项目中使用ASP.NETMVC、CastleWindsor和Log4Net 我的日志组件中有类似的内容: public class Log4NetLoggerService : ILoggerService { private readonly ILog _logger; public Log4NetLoggerService() { _logger = LogManager.GetLogger(typeof(Log4NetLoggerServ
public class Log4NetLoggerService : ILoggerService
{
private readonly ILog _logger;
public Log4NetLoggerService()
{
_logger = LogManager.GetLogger(typeof(Log4NetLoggerService));
}
}
当然,这会在我的日志文件中显示“Log4NetLoggerService”
现在,我想知道我的日志组件是为哪个消费类解析/构建的
我尝试过使用StackFrame类,但运气不佳(不仅如此,还因为日志记录服务可以隐式解析(IoC)或直接调用IKernel.Resolve)
在Windsor框架中一定有办法做到这一点,我只是找不到任何东西
谢谢 为什么不在构造函数中使用类型
public Log4NetLoggerService(Type loggingComponentType)
{
_logger = LogManager.GetLogger(loggingComponentType);
}
如果将记录器用作组件中的静态成员,则只需将类型发送一次。因为它不是由Castle Windsor(IoC)手动构造的。对不起,我迟了答复。