.NET : 跟踪和调试技术
来源:互联网 发布:犀牛5.0mac版授权码 编辑:程序博客网 时间:2024/06/06 20:39
我们如果要为.NET程序启用跟踪和调试,则可以使用System.Diagnostics空间下面的一些API。为了方便编程,我们通常会使用配置文件来定义有关的信息
1. 配置文件
xml version="1.0" encoding="utf-8" ?><configuration> <system.diagnostics> <trace autoflush="true"> <listeners> <clear/> <add name="default" type="System.Diagnostics.ConsoleTraceListener" initializeData="">add> <add name="text" type="System.Diagnostics.XmlWriterTraceListener" initializeData="e:/temp/trace.xml">add> listeners> trace> system.diagnostics>configuration>.csharpcode, .csharpcode pre{font-size: small;color: black;font-family: consolas, "Courier New", courier, monospace;background-color: #ffffff;/*white-space: pre;*/}.csharpcode pre { margin: 0em; }.csharpcode .rem { color: #008000; }.csharpcode .kwrd { color: #0000ff; }.csharpcode .str { color: #006080; }.csharpcode .op { color: #0000c0; }.csharpcode .preproc { color: #cc6633; }.csharpcode .asp { background-color: #ffff00; }.csharpcode .html { color: #800000; }.csharpcode .attr { color: #ff0000; }.csharpcode .alt {background-color: #f4f4f4;width: 100%;margin: 0em;}.csharpcode .lnum { color: #606060; }
2. 写入调试信息
using System.Diagnostics;namespace ConsoleApplication1{ class Program { static void Main(string[] args) { Debug.WriteLine("Hello,world"); } }}
.csharpcode, .csharpcode pre{font-size: small;color: black;font-family: consolas, "Courier New", courier, monospace;background-color: #ffffff;/*white-space: pre;*/}.csharpcode pre { margin: 0em; }.csharpcode .rem { color: #008000; }.csharpcode .kwrd { color: #0000ff; }.csharpcode .str { color: #006080; }.csharpcode .op { color: #0000c0; }.csharpcode .preproc { color: #cc6633; }.csharpcode .asp { background-color: #ffff00; }.csharpcode .html { color: #800000; }.csharpcode .attr { color: #ff0000; }.csharpcode .alt {background-color: #f4f4f4;width: 100%;margin: 0em;}.csharpcode .lnum { color: #606060; }
3. 测试结果
4. 假设需要根据不同的设置来将调试信息保存到不同的Listener中去,那么该怎么办呢
假设,我们只是希望将一些紧要的跟踪信息写入到XML文件中,其他的消息输出到屏幕即可。那么按照下面这样修改一下配置文件
xml version="1.0" encoding="utf-8" ?><configuration> <system.diagnostics> <sources> <source name="sample" switchValue="Error"> <listeners> <add name="text" type="System.Diagnostics.XmlWriterTraceListener" initializeData="e:/temp/trace.xml">add> listeners> source> sources> <trace autoflush="true"> <listeners> <clear/> <add name="default" type="System.Diagnostics.ConsoleTraceListener" initializeData="">add> listeners> trace> system.diagnostics>configuration>
代码
using System.Diagnostics;namespace ConsoleApplication1{ class Program { static void Main(string[] args) { Debug.WriteLine("Hello,world"); //写入特定的源 TraceSource source = new TraceSource("sample"); source.TraceData(TraceEventType.Error, 1, "Hello,World"); } }}.csharpcode, .csharpcode pre{font-size: small;color: black;font-family: consolas, "Courier New", courier, monospace;background-color: #ffffff;/*white-space: pre;*/}.csharpcode pre { margin: 0em; }.csharpcode .rem { color: #008000; }.csharpcode .kwrd { color: #0000ff; }.csharpcode .str { color: #006080; }.csharpcode .op { color: #0000c0; }.csharpcode .preproc { color: #cc6633; }.csharpcode .asp { background-color: #ffff00; }.csharpcode .html { color: #800000; }.csharpcode .attr { color: #ff0000; }.csharpcode .alt {background-color: #f4f4f4;width: 100%;margin: 0em;}.csharpcode .lnum { color: #606060; }.csharpcode, .csharpcode pre{font-size: small;color: black;font-family: consolas, "Courier New", courier, monospace;background-color: #ffffff;/*white-space: pre;*/}.csharpcode pre { margin: 0em; }.csharpcode .rem { color: #008000; }.csharpcode .kwrd { color: #0000ff; }.csharpcode .str { color: #006080; }.csharpcode .op { color: #0000c0; }.csharpcode .preproc { color: #cc6633; }.csharpcode .asp { background-color: #ffff00; }.csharpcode .html { color: #800000; }.csharpcode .attr { color: #ff0000; }.csharpcode .alt {background-color: #f4f4f4;width: 100%;margin: 0em;}.csharpcode .lnum { color: #606060; }
- .NET : 跟踪和调试技术
- 调试和跟踪ASP.NET应用程序
- 调试和跟踪ASP.NET应用程序
- 调试和跟踪ASP.NET应用程序
- Visual C# .NET 中跟踪和调试
- 【insigma】跟踪调试技术
- HOW TO:在 Visual C# .NET 中跟踪和调试
- 在C#.net中跟踪和调试程序
- 怎样在Visual C# .NET 中跟踪和调试
- 在 Visual C# .NET 中跟踪和调试
- 怎样在 Visual C# .NET 中跟踪和调试
- .Net 下调试跟踪线程挂起和程序死循环
- 用TestDriven.NET做单元测试和跟踪调试
- 在 Visual C# .NET 中跟踪和调试
- 反调试跟踪技术总结
- 12:ASP.NET复习系列- ASP.NET基本知识点-调试和跟踪ASP.NET应用程序
- 调试和跟踪ASP_NET应用程序
- VS调试技术-断点与跟踪点
- ASP.NET : 如何为网站添加自定义的文件类型
- IIS 7 :集成管道模式下的文件处理类型注册
- IIS 7 提供的.NET 管理接口
- TOP Silverlight Feature
- 如何让Silverlight程序可以在浏览器外运行
- .NET : 跟踪和调试技术
- 使用正则表达式实现搜索关键字高亮显示
- 在WCF中使用消息队列
- jquery lightBox plugin
- IE和FF下通用的DIV托动----用的是捕获(鼠标不拈贴)
- Oracle数据库开发优化总结
- C# 怎么实现 closeHandle
- js-div详细内容跟随鼠标显示
- 一个跟随鼠标的图片放大效果,与FF兼容