【发布时间】:2014-10-07 18:12:26
【问题描述】:
我一直在尝试为我自己的方法边界方面添加一些填充。
StackTrace 似乎没有任何帮助,我找不到计算帧数基线的模式,对于简单的场景来说,它大约是 12。
[Serializable]
public class MyLogger : OnMethodBoundaryAspect
public override void OnEntry(MethodExecutionArgs args)
{
// ...
var ignoreFrameCount = ???; // in simple scenarios is ~12
var n = new StackTrace().FrameCount - ignoreFrameCount;
var padding = String.Empty.PadLeft(n*2);
// ...
我知道 PostSharp 会这样做 (Indentation in Logging)
有没有办法做到这一点?
【问题讨论】: