Visual Studio相当于java System.out

Les*_*lie 43 c# debugging visual-studio-2010

我在Visual Studio(C#)中使用什么来执行Java的等效操作System.out.println( /*stuff*/ )

命令的输出是否显示在IDE的"输出"窗口中?

我在网页上有一个按钮,它调用一个返回字符串的服务.我想看看字符串中的内容并尝试了下面的所有变体,并且输出中没有显示任何内容.它也不会在断点处停止,因此我可以检查是否有任何结果.

var service = new OTest.TylerAPI.APIWebServiceSoapClient();
results = service.OdysseyMsgExecution("<Message MessageType='FindCaseByCaseNumber' Source='APIMessage' ReferenceNumber='1' NodeID='1' UserID='1'> <CaseNumber>T4CV0043212010</CaseNumber></Message>", "NMODYSSEYMETRO");
System.Diagnostics.Debug.Write(results);
Run Code Online (Sandbox Code Playgroud)

nan*_*nan 50

尝试: Console.WriteLine(类型out为Visual Studio的片段)

Console.WriteLine(stuff);
Run Code Online (Sandbox Code Playgroud)

另一种方法是使用System.Diagnostics.Debug.WriteLine:

System.Diagnostics.Debug.WriteLine(stuff);
Run Code Online (Sandbox Code Playgroud)

Debug.WriteLine可能更适合IDE中的输出窗口,因为它将为Console和Windows应用程序呈现.然而,Console.WriteLine在控制台应用程序类型的情况下,不会在"输出"窗口中呈现,而是仅在控制台本身中呈现.

另一个区别是Debug.WriteLine不会在Release配置中打印任何内容.

  • 为什么后者更好? (2认同)

Fem*_*ref 5

使用或者Debug.WriteLine()或者Trace.WriteLine().如果处于释放模式,只有后者将出现在输出窗口中,在调试模式下,两者都将.