classProgram:CriticalFinalizerObject{staticvoidMain(string[]args){Programp=newProgram();TextWriterTraceListenerlistener=newTextWriterTraceListener(@"C:\trace.txt");Trace.Listeners.Clear();//RemovedefaulttracelistenerTrace.Listeners.Add(listener);Trace.WriteLine("FirstTrace");//Generatesometracem
PHP有一个名为print_r()和var_dump()的函数,可以显示项目的所有内容。这使得弄清楚事物是什么变得非常容易。在C#中有类似的东西吗?我知道C#中有一个Console.WriteLine("Hello");,但这在MVC中有效吗?我可以在运行应用程序时像flash那样在调试控制台中执行某种类型的debug.trace()吗? 最佳答案 System.Diagnostics.Debug.WriteLine("blah");为了显示对象中的所有变量,您必须覆盖其ToString()方法或编写一个方法来返回您需要的所有对象信
好了别笑了。2005年,我读到有关使用System.Diagnostics命名空间进行跟踪的信息,它很复杂,从那以后我就一直使用log4net和NLog(其他人也是如此)。今天,我的应用程序将托管在WindowsAzure网站上,并使用我们的老friendTrace。http://azure.microsoft.com/en-gb/documentation/articles/web-sites-enable-diagnostic-log/自鸣得意,我总是使用抽象,IoC,所以我只是在写一个新的小垫片来使用Trace但它只有TraceInformation,TraceWarning和T
对于我的WPF应用程序,我使用TextWriterTraceListener记录到一个文本文件。我还可以如何将Trace输出显示到文本框? 最佳答案 我将其用于C#winforms,应该可以轻松调整为wpfpublicclassMyTraceListener:TraceListener{privateTextBoxBaseoutput;publicMyTraceListener(TextBoxBaseoutput){this.Name="Trace";this.output=output;}publicoverridevoidWri
我使用C#(使用VSIDE)进行开发。我对调试/跟踪语句感到困惑。我们在哪里以及为什么使用这些语句?我经常在其他开发人员的源代码中看到这些。谁能指点一下? 最佳答案 Debug语句仅出现在Debug版本中。Trace语句存在于调试和发布版本中。为了调试或检查,您可以将Debug和Trace语句放在要输出某些值的地方。这篇MS支持文章可能会引起您的兴趣:HowtotraceanddebuginVisualC#TheTraceclassroutesmessagestolisteners:classesthataredesignedtoa
我正在尝试弄清楚如何管理我的事件ID。到目前为止,我一直在手动将每个事件ID放入每个方法中,方法中的每个步骤都按顺序编号。这不允许我有效地过滤事件日志中的事件。为了在事件日志中使用过滤器,似乎每个记录的事件都必须有自己唯一的ID。我可以将它们全部存储在一个表中,并带有链接到它们的描述,但是当我的代码执行时,我正在记录“神奇”的无意义事件代码。我进行了Google搜索,但我似乎不知道要使用正确的关键字来弄清这个问题的根源。提前致谢 最佳答案 像Ben的建议一样,使用一定程度的间接访问可能是值得的-但我不会为代码使用int,而是使用实际
我在带有.NETMicroFramework的微Controller上运行代码,我希望我的调试输出写入一个文本文件。这是如何工作的? 最佳答案 使用Trace.它旨在满足您的需求。usingSystem;usingSystem.Diagnostics;classTest{staticvoidMain(){Trace.Listeners.Add(newTextWriterTraceListener("yourlog.log"));Trace.AutoFlush=true;Trace.Indent();Trace.WriteLine("
我正在编写一个可重用的基础存储库类,开发人员将在其中传递一个代表ObjectContext的泛型。基础存储库将使用Activator.CreateInstance创建它的实例.调试时我想使用nuget包CommunityEFProviderWrappers.EFTracingProvider.所以我设置对象上下文的代码如下所示:publicvoidRenewDataContext(){#ifDEBUG//getthedefaultcontainernamevarcontainerName=Activator.CreateInstance().DefaultContainerName;/
在开发MVC或WCF应用程序时,您在哪里看到Trace.Write("");日志?正确的看点是什么? 最佳答案 当使用System.Diagnostics.Trace类时,Write方法写入其跟踪输出“tothetracelistenersintheListenerscollection.”默认情况下,Trace.Listeners属性仅包含DefaultTraceListener的一个实例,它将消息输出到调试器输出窗口。当然,要查看这些跟踪消息,您必须启用调试。因此,如果您在VisualStudio中调试WCF服务或ASP.NET
我想在我的应用程序中记录某些函数调用的堆栈跟踪。我喜欢console.trace()呈现数据的方式,但它总是将数据吐出到控制台扩展。如果你有几十个日志,这很快就会变得困惑。有些人建议使用logError().stack,其他人建议使用console.error(),其他人建议使用Error.captureStackTrace()。但所有这些都有我不喜欢的东西。console.error使控制台困惑,很难看到真正的错误。其他人没有打印出漂亮或可用的堆栈。应该有一种方法可以简单地让console.trace()默认折叠。 最佳答案 答案