0

因此,我正在与 PostSharp 合作以提取样板日志记录/异常处理代码,以便:

public void doSomething()
{
    Logger.Write("Entered doSomething");

    try
    {
        // code
    }
    catch (Exception ex)
    {
        ExceptionPolicy.HandleException(ex, "Errors");
    }

    Logger.Write("Exited doSomething");
}

变成这样:

[Log]
[HandleExceptions]
public void doSomething()
{
    // code
}

但是,在某些地方,我的代码有一个存在已知恢复点的实例,所以它看起来像:

public void doSomethig()
{
    try
    {
        // code
    }
    catch (KnownException ex)
    {
        ExceptionPolicy.HandleException(ex, "Known");
    }
    finally
    {        
        this.Recover();
    }
}

我想将此表示为建议,但我似乎无法从建议中访问班级成员。

4

1 回答 1

1

是的。要从方面调用目标类的成员,您必须将此成员导入到方面。请参阅http://doc.sharpcrafters.com/postsharp/2.0/Content.aspx/PostSharp.chm/html/e2086a16-ba9e-43b6-b322-12021b6f24c8.htm

于 2010-08-03T20:51:43.370 回答