我的Postsharp跟踪器属性记录了一些类/方法,但没有记录其他类

时间:2014-06-27 04:07:53

标签: postsharp

背景

我正在使用Postsharp版本3.0.42.9并创建了自定义跟踪器属性(OnMethodBoundaryAspect)。我已经在我的WebForms项目的程序集级别应用它,如下所示:

[assembly: MyLogging.Tracer(AttributePriority = 1)]
[assembly: MyLogging.Tracer(AttributeExclude = true, AttributeTargetMembers = "regex:^get_|^set_", AttributePriority = 2)]

跟踪器使用方法参数记录条目,并使用返回值退出。我正在使用NLog将日志条目写入数据库表。

我的解决方案和同一命名空间中同一项目的同一文件夹中的以下两个类位于不同的文件中:

public class ClassA : IClassA
{
    public OperationResult PerformOperation(IEnumerable<SomeDto> parameters)
    {
        var classB = new ClassB();
        return classB.AnotherOperation(parameters);
    }        
}

//In a different file
public class ClassB
{
    public OperationResult AnotherOperation(IEnumerable<SomeDto> parameters)
    {
        //Do some stuff
        return operationResult;
    }
}
实例化{p> ClassA并从aspx页面调用。

问题

我按照预期ClassA获取PerformOperationaspx页面中的方法,但ClassB中的任何方法都没有记录任何内容。

感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

我正在登录数据库表,其中一列不足以容纳数据。当我打开NLog的内部日志记录时,它让我按计划解决问题。这不是由Postsharp引起的。