WCF中的日志错误问题
我实现了一个类,该类实现了IErrorHandler接口来记录WCF错误。我想做的一件事是记录发生异常时连接到我的服务的用户的身份。我的所有日志记录都发生在IErrorHandler接口的HandleError()方法中,但由于HandleError()可能没有当前操作上下文,因此无法获取SecurityContext.PrimaryIdentity。我已经提出了以下代码来捕获HandleError方法中可能不可用的东西,但我不确定这在所有情况下都能起作用WCF中的日志错误问题,wcf,error-handling,Wcf,Error Handling,我实现了一个类,该类实现了IErrorHandler接口来记录WCF错误。我想做的一件事是记录发生异常时连接到我的服务的用户的身份。我的所有日志记录都发生在IErrorHandler接口的HandleError()方法中,但由于HandleError()可能没有当前操作上下文,因此无法获取SecurityContext.PrimaryIdentity。我已经提出了以下代码来捕获HandleError方法中可能不可用的东西,但我不确定这在所有情况下都能起作用 public class MyErro
public class MyErrorHandler : IErrorHandler
{
private IIdentity identity;
public bool HandleError(Exception error)
{
// Do something with identity
return false;
}
public void ProvideFault(Exception error, MessageVersion version, ref Message fault)
{
this.identity = Operation.Current.SecurityContext.PrimaryIdentity;
}
}
上面的代码似乎正在运行,但是有什么问题吗
谢谢 出于某种原因,我认为每次出现异常时都会创建该类。在任何情况下,我都能够通过使用Exception对象的Dictionary属性来存储我想与我的异常一起记录的自定义数据来解决我的问题