如何在ASP.NET环境中使用控制台输出?

时间:2009-12-04 17:43:18

标签: c# asp.net console

我想在请求处理期间打印一些跟踪。

但是当我在这个环境中创建Console.WriteLine(“something”)时,没有显示任何内容。

缺少什么,为了使用控制台打印这些痕迹,我需要做些什么?

6 个答案:

答案 0 :(得分:28)

使用Debug.Write()并通过IDE中的调试器输出窗口观察结果。

或者,使用ASP.NET trace功能,功能非常强大。启用跟踪后,您可以导航到Web应用程序根目录中的trace.axd页面。此页面将显示应用程序的跟踪消息。

答案 1 :(得分:9)

除了已经提到的方法之外,您只需写入日志文件:

File.AppendAllText(@"c:\log.txt", @"Debug Message Here!" + Environment.NewLine);

当然,您可以使用Server.MapPath在您的Web目录中编写该文件。

答案 2 :(得分:8)

我知道这已经很晚了,但您可以使用以下类从C#脚本写入Javascript控制台

public static class Javascript
{
    static string scriptTag = "<script type=\"\" language=\"\">{0}</script>";
    public static void ConsoleLog(string message)
    {       
        string function = "console.log('{0}');";
        string log = string.Format(GenerateCodeFromFunction(function), message);
        HttpContext.Current.Response.Write(log);
    }

    public static void Alert(string message)
    {
        string function = "alert('{0}');";
        string log = string.Format(GenerateCodeFromFunction(function), message);
        HttpContext.Current.Response.Write(log);
    }

    static string GenerateCodeFromFunction(string function)
    {
        return string.Format(scriptTag, function);
    }
}

通过这种方式,您可以在点击网站时实时查看日志消息,就像在js中一样。

答案 3 :(得分:4)

您可以使用Response.Write将输出写入页面以进行调试,或者在javascript中使用alert,甚至可以写入日志文件。有很多方法可以获得调试输出。你也可以使用.Net的log4net(类似于log4j)

答案 4 :(得分:3)

鉴于它是一个ASP.NET应用程序,我会这样做:

Page.Trace.Write ("Something here");

然后为page or the application启用跟踪,然后转到〜/ Trace.axd 查看结果(它们也可以在页面输出的末尾,具体取决于您选择的配置选项。)

答案 5 :(得分:1)

你在哪里寻找输出?

Console.WriteLine()写入命令行 - 而不是网页。使用Response.Write()写入网页或在Visual Studio调试器中启动应用程序以查看命令行输出。