我正在使用Log4net并且有一个记录调用上下文的方法
private void LogCallingProgramContext()
{
OperationContext context = OperationContext.Current;
if (context != null)
{
MessageProperties messageProperties = context.IncomingMessageProperties;
var endpointProperty =
messageProperties[RemoteEndpointMessageProperty.Name] as RemoteEndpointMessageProperty;
if (endpointProperty != null)
{
string strCallingProgramContext = string.Format("Call from IP address {0} and port is {1}", endpointProperty.Address, endpointProperty.Port);
Logger.Info(strCallingProgramContext);
}
}
}
我想要的是有什么方法可以记录消息方法名称和参数
答案 0 :(得分:0)
您无法从代码的上下文中检索方法的参数值,只能检索其类型。我担心你想要做什么是不可能的。您可以将参数传递给日志记录方法以记录它们的值,也可以使用aspect oriented programming系统,其中您感兴趣的函数将包含在您可以定义的某些代码中。
有很多AOP解决方案可供选择,我个人喜欢Castle.Windsor及其interceptors。