【问题标题】:Visual studio equivalent of java System.out相当于 java System.out 的 Visual Studio
【发布时间】:2011-06-11 05:53:18
【问题描述】:

我在 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);

【问题讨论】:

  • 如果它没有命中断点我怀疑代码根本没有执行。
  • 你说得对,我将断点放在第一行(var 服务)并停止,当我介入时,我发现错误:发生“System.InvalidOperationException”类型的第一次机会异常在 System.ServiceModel.dll 中
  • 是的,异常位置之后的代​​码没有被执行。尝试发布一个带有 web-service 标记的新问题,并尽可能详细地描述问题和异常细节,您将吸引更多的回答者。

标签: c# visual-studio-2010 debugging


【解决方案1】:

试试:Console.WriteLine(对于 Visual Studio 或 Rider sn-p,键入 out

Console.WriteLine(stuff);

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

System.Diagnostics.Debug.WriteLine(stuff);

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

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

【讨论】:

  • 为什么后者更好?
【解决方案2】:

System.Diagnostics

Debug.Write()
Debug.WriteLine()

等等。将打印到 VS 中的输出窗口。

【讨论】:

    【解决方案3】:

    使用Debug.WriteLine()Trace.WriteLine()。如果在发布模式下,只有后者会出现在输出窗口中,在调试模式下,两者都会。

    【讨论】:

      【解决方案4】:

      或者,如果您想在 Visual Studio 的“输出”窗口中查看输出,System.Diagnostics.Debug.WriteLine(stuff)

      【讨论】:

        【解决方案5】:

        您可以使用Console.WriteLine() 写出任何本机类型。要查看输出,您必须编写控制台应用程序(如在 Java 中),然后输出将显示在命令提示符中,或者如果您正在开发 Windows GUI 应用程序,在 Visual Studio 中您必须打开“输出”面板(在视图下) 查看命令输出。

        【讨论】:

          猜你喜欢
          • 2010-09-07
          • 2011-02-04
          • 2014-01-26
          • 2015-04-01
          • 2011-06-12
          • 1970-01-01
          • 1970-01-01
          • 2020-11-05
          • 1970-01-01
          相关资源
          最近更新 更多