Exemple #1
0
 public void ApplyDispatchBehavior(ServiceDescription serviceDescription, ServiceHostBase serviceHostBase)
 {
     foreach (ServiceEndpoint endpoint in serviceDescription.Endpoints)
     {
         foreach (OperationDescription operation in endpoint.Contract.Operations)
         {
             IOperationBehavior behavior = new LoggingOperationBehavior();
             operation.Behaviors.Add(behavior);
         }
     }
 }
Exemple #2
0
        public void ApplyDispatchBehavior(ServiceDescription serviceDescription, ServiceHostBase serviceHostBase)
        {
            foreach (ServiceEndpoint endpoint in serviceDescription.Endpoints)
            {
                foreach (OperationDescription operation in endpoint.Contract.Operations)
                {
                    /* deactivate "webservice logger for smoke test" for now...
                     * IOperationBehavior dbLogBehavior = new WebServiceCallLoggerBehavior();
                     * operation.Behaviors.Add(dbLogBehavior);
                     * Log.Debug($"WebServiceCallLoggerBehavior added to operation: {operation.Name}");
                     */

                    var logAttr = operation.SyncMethod.GetCustomAttributes(typeof(LoggingOperationAttribute), false).FirstOrDefault();

                    if (logAttr != null && ((logAttr as LoggingOperationAttribute).ConfigType == LoggingOperationConfig.Disable))
                    {
                        continue; // dont attach behavior if we dont want logs for this operation
                    }
                    IOperationBehavior behavior = new LoggingOperationBehavior();
                    operation.Behaviors.Add(behavior);
                    Log.Debug($"LoggingOperationBehavior added to operation: {operation.Name}");
                }
            }
        }