根据我的另一个问题的建议,我将引用的代码转换为与 PostSharp 一起使用:
属性:
[Serializable]
public sealed class InitAttribute : OnMethodBoundaryAspect
{
public override void OnEntry(MethodExecutionEventArgs eventArgs)
{
Console.Write("Works!");
}
}
static class Logger
{
public static string _severity;
public static void Init(string severity)
{
_severity = severity;
}
[Init()]
public static void p()
{
Console.WriteLine(_severity);
}
}
尽管如此,我还是无法得到任何结果(控制台上的“Works!”)。PostSharp 属性中的断点表明它从未被输入过。
有什么帮助吗?提前致谢。