当您建立在Visual Studio中的一个项目,输出窗口输出生成过程,其中包括错误和警告的状态。 双击这些线路将打开包含在编辑器中的错误/警告的文件。
现在,是有可能得到该功能与输出的Debug.WriteLine,或类似的东西? 所以,当调试窗口输出,例如
Buffering: 13:03:20 to 13:03:21
我将能够双击它,采取BufferClass.cs 45行,因为这是的Debug.WriteLine调用的位置。
这是可能的,无论是通过.NET库,或通过一个Visual Studio扩展?
我就先走,然后自己回答这个问题。
为了能够直接跳转到源文件,格式化你的信息是这样的:
string.Format("{0}({1})", filePath, lineNumber);
这样,Visual Studio将自动添加双击功能,并直接带您到源。
此外,如果您使用的Visual Studio 2012的新功能,如下所述: 来电详细信息 ,你可以实现你的登录方法是这样的:
private void LogData(string message,
[CallerMemberName] string callerName = "",
[CallerLineNumber] int lineNumber = -1,
[CallerFilePath] string filePath = "")
{
Debug.WriteLine(message);
Debug.WriteLine(string.Format(" {0}({1})", filePath, lineNumber));
}
此外,增加“:错误”或“:警告”到底让Visual Studio的颜色是红色或黄色。 如果有此说明任何进一步的文章,我真的很想知道。
那么,这个问题(和答案),似乎有点过时,所以让我刷新:
在Visual Studio 2013,下面的格式是出现以使联动,文件/行回荡该消息的只有一个:
C#:
{0}({1}): <message here>
对于C / C ++,给这一个旋转 :
#define STRINGX(x) #x
#define STRING(x) STRINGX(x)
#define MY_LOG(msg) __pragma(message(__FILE__"(" STRING(__LINE__) "): " msg))
如果不包括结束括号后的冒号,或有文件名和行号之间的空间,它不会链接到源代码。