在WCF中使用Unity拦截进行日志记录的最佳方法

时间:2015-02-06 21:14:40

标签: c# wcf logging unity-container interception

我有一个WCF服务,我已经读过使用Unity Interception进行日志记录可能会很好。我想将错误以及进入WCF应用程序的每个请求和响应记录到数据库中。所以我打算创建一个可以从我的LoggingInterceptionBehavior类调用的日志类。是否最好使我的新日志类成为常规实例对象,并在下面的代码中重新编写它,或者我应该将其设为单例?以下是我的代码设置示例:

 class LoggingInterceptionBehavior : IInterceptionBehavior
{
    public IMethodReturn Invoke(IMethodInvocation input,
      GetNextInterceptionBehaviorDelegate getNext)
    {
        // Create a guid here to uniquely identify this call
        // Save the request in some variable for logging

        var result = getNext()(input, getNext);

        //Call logging class here to log the request/response/error

        return result;
    }

0 个答案:

没有答案