gpt4 book ai didi

c# - 记录文件名,日志中的行号。我需要通过 StackFrame 吗?

转载 作者:行者123 更新时间:2023-11-30 12:51:47 30 4
gpt4 key购买 nike

目前,我通过 StackFrame 来获取当前文件/行号:

Log.Message(new StackFrame(0, true), "FAILED to start cooling.");

Log 类中的位置是:

public void Message(StackFrame Callstack, string message)
{
string logMessage = string.Format("{0} {1}:{2} {3} \t{4}", DateTime.Now.ToString(), Callstack.GetFileName(), Callstack.GetFileLineNumber(), Callstack.GetMethod(), message);

//Write to console
Console.WriteLine(logMessage);

//write to file
}

是否需要每次都将 StackFrame 传递给 Log.Message() 方法?这可以在不通过它的情况下以它自己的方法完成吗?有没有更简单的方法?

谢谢。

最佳答案

你可以这样做:

public void Message(string message) {
StackFrame callstack = new StackFrame(1, true);
// ...
}

1 跳过调用堆栈的 Message 方法部分并获取它的调用者。

关于c# - 记录文件名,日志中的行号。我需要通过 StackFrame 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6074902/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com