我使用最新的Castle Windsor容器,并且我想创建一个记录器,它将写入文件以记录我想要的内容,同时也编写调用者程序集名称。所以这里有一个例子:确定哪个类或程序集实例化与Castle Windsor容器的对象
namespace Core.Datalayer
{
public class Foo
{
public Foo(ILogger logger)
{
logger.Write("test line");
}
}
}
容器正确地给出了实例,但我想不通我怎么能确定呼叫者集名称或来电类的名字吗?我想,该记录器写入文件是这样的:
“组装Core.Datalayer-检测线”
是否有可能以确定其中实例化的ILogger接口?
我试过Assembly.GetCallingAssembly(),但始终是Castle.Core,因为堆栈已满Castle.Core调用。
? log4net,nlog,别的? – 2014-08-27 19:16:49
我不使用任何框架来记录它只是一个简单的记录器。我直接在文件中写入文本。 – 2014-08-27 19:18:15
可能重复[如何找到调用当前方法的方法?](http://stackoverflow.com/questions/171970/how-can-i-find-the-method-that-called-the-current -method) – 2014-08-27 19:18:52