Debug.WriteLine到不同的“频道”?

时间:2011-09-25 18:40:52

标签: c# debugging

http://i.minus.com/ibsHfIOAy7lBCj.png

我想在VS的输出窗口中写一些东西,这样我就可以看到发生了什么,但它只是充斥着所有其他的东西。有什么方法可以写一个不同的“频道”吗?那里有那个下拉,我看到AnkhSVN也加入了自己......我可以添加另一个只有我的东西吗?

3 个答案:

答案 0 :(得分:4)

为此使用Trace。您将在正在运行的项目中具有App.config文件或Web.config文件。在此文件中添加trace listener

当您调用trace(与Debug非常相似)时,您可以指定级别(Info,Warning,Debug,Error)。基于此级别,您可以决定保存信息的位置和方式。

How to Trace and Debug in Visual Studio

答案 1 :(得分:4)

您可以使用“将所有输出窗口文本重定向到立即窗口”选项:

Redirect Ouput to Immediate

虽然它说全部,但它只会重定向Debug.WriteLine等。

或者,您可以抑制输出窗口本身的噪声消息:

enter image description here

答案 2 :(得分:1)

如果您创建一个visual studio addin(默认情况下),您将拥有一个带有public void OnConnection的connect.cs(对象应用程序,ext_ConnectMode connectMode,对象addInInst,ref Array自定义)

您可以使用此应用程序对象执行您想要执行的操作。

DTE2 app = (DTE2)application;
OutputWindowPane XXX = app.ToolWindows.OutputWindow.OutputWindowPanes.Add("XXX");

现在你可以使用:

XXX.OutputString("some text" + Environment.NewLine);

此文本将出现在名为“XXX”的“频道”