在 Visual Studio 中进行调试的简单写行

Easy writeline for debugging in Visual Studio

提问人:Anders Den 提问时间:7/30/2023 最后编辑:marc_sAnders Den 更新时间:7/31/2023 访问量:46

问:

是否存在一些易于使用的解决方案,只需在Visual Studio的输出窗口中执行用于调试的writeline。我知道 和 ,但它们似乎只能在调试模式下工作,实际上它们有时都会遇到一些困难。Trace.WriteLineDebug.WriteLine

我只想写行!!总是:) 实际上,如果能够在生产中看到这些写入行,那就很好了。

任何提示非常感谢

asp.net visual-studio 调试

评论

0赞 Guru Stron 7/30/2023
它完全按照它声称要做的事情 - 写入标准输出。Console.WriteLine
0赞 Guru Stron 7/30/2023
啊,你似乎使用经典 ASP.NET,这不会产生影响。因此,对于调试,只需使用或更好地使用 VS 调试器本身,它非常强大,允许做很多事情(包括条件断点)。对于其他所有内容 - 使用日志记录。Debug.WriteLine
0赞 Anurag R 7/30/2023
您尝试写入文件吗?有一个自定义类,其中包含将任何文件写入您喜欢的任何位置的方法。只需在需要时调用您的方法即可。您能添加有关该应用程序的更多详细信息吗?是控制台还是 Web?
0赞 wenbingeng-MSFT 8/2/2023
您可以尝试使用 Trace 类和 TextWriterTraceListener 类

答:

0赞 Albert D. Kallal 7/31/2023 #1

好的,让我们以 debug.print 为例。(或调试。写行)。

因此,第一件事是将 Visual Studio 设置为将该输出发送到“即时”窗口。

因此,tools->options->调试。

您要选择此选项:

enter image description here

因此,现在,如果您构建桌面或 asp.net 应用程序,那么您将有一个通用的输出窗口。

您可以将此添加到您的 asp.net 项目中:

    public static void MyLog(string sText)
    {
        string sJava = "";
        sJava = $@"<script>console.log('{sText}')</script>;";
        HttpContext.Current.Response.Write(sJava)

    }

所以,假设我们在网页上放一个按钮,按 f5 运行,现在我们有这个:

enter image description here

因此,默认情况下,Visual Studio 不提供控制台。

因此,使用以下代码隐藏按钮存根:

    protected void Button1_Click(object sender, EventArgs e)
    {
        Debug.Print("This is my button click");

        string MyZoo = "Hello";
        General.MyLog("Value of MyZoo = " + MyZoo);
    }

但是,请注意上面的第二个代码,称为 MyLog。这会将“日志”发送到浏览器端调试工具。所以,如果我按 f12(浏览器工具),那么我会看到这个:

enter image description here

因此,您可以将“console.log”命令发送到浏览器端,因此客户端和服务器端都可以在一个浏览器端控制台中显示信息。

实际上,如果还能够看到这些 WriteLine 在生产中,那就太好了。

不,你不想这样做,因为性能成本相当高。如果您需要某种类型的日志记录系统,请采用某种将信息写入日志文件或类似文件的系统。

评论

0赞 Anders Den 8/3/2023
谢谢!我认为我们将使用我们自己的基于 Web 的日志系统:)