所以,奇怪的问题。 我正在使用Debug.WriteLine()来写出我的输出,但是对于我的任何错误,我都希望看到它的代码和行值的引用或链接。 VS能做到吗?
我了解了Firebug / WebDev控制台是如何做到的。
谢谢,
答案 0 :(得分:3)
您可以使用StackTrace类来获取此信息。像这样:
public class Utils {
public static string MyCaller {
get {
#if DEBUG
var trace = new StackTrace(true);
var frame = trace.GetFrame(1);
return frame.GetFileName() + "#" + frame.GetFileLineNumber().ToString();
#else
return "N/A";
#endif
}
}
}
样本用法:
class Program {
static void Main(string[] args) {
Debug.Print("Hello world from {0}", Utils.MyCaller);
}
}
输出:
来自C:\ Users \ hpassant \ AppData \ Local \ Temporary Projects \ ConsoleApplication1 \ Program.cs#10
的Hello world
答案 1 :(得分:1)
Visual Studio 2012可以使用来电者信息执行此操作。
请参阅http://msdn.microsoft.com/en-us/library/hh534540.aspx
(虽然不是链接,但至少你得到的信息。)