在使用vs开发asp.net 项目的时候,调试很不方便,不如MyEclipse 中可以向控制台中输出一些信息来调试程序的运行,
而使用,其自带的debug工具,操作太繁琐。
在asp.net 下没有什么好的控制台调试工具。
下面是我自己编写的一套在asp.net 项目下可以运行的轻量级调试工具。
目前版本为0.2 以后会不断升级最终成为国内出名的调试工具。
1,原理
在asp.net 网站项目当中,不可以使用Console.WriteLine() 向控制台写信息。
可以利用 “Process” 来新启一下进程。如:“cmd.exe”
debug.bat :
echo asp.net 测试工具
pause
使用 文件读写流写入一个 .bat 批处理文件,在使用“Process” 启动这个 批处理文件用来显示一些信息。
2,以下是代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
using System.Collections;
namespace Q
{
/// <summary>
/// 清如许命令行调试工具
/// </summary>
public class Debug
{
private static ArrayList arraylist = new ArrayList();
public static void Print(String str)
{
arraylist.Add(str);
}
public static void Display()
{
FileStream stream = new FileStream("d:/debug.bat", FileMode.Truncate);
StreamWriter fileWriter = new StreamWriter(stream, Encoding.Default);
fileWriter.WriteLine("@echo off");
fileWriter.WriteLine("echo asp.net 测试工具! 作者:清如许 系统时间:" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
fileWriter.WriteLine("echo ----------- 输出 ------------------");
foreach (String str in arraylist)
{
fileWriter.WriteLine("echo " + str);
}
fileWriter.WriteLine("echo ----------- 结束 ------------------");
fileWriter.WriteLine("pause");
fileWriter.Flush();
fileWriter.Close();
System.Diagnostics.Process.Start("d:/debug.bat");
}
}
}
3,调用 生我生成的 Qdebug.dll 添加的项目引用。
在需要显示的地方,输入以下代码即可。
Q.Debug.Print("asp.net 测试控制台输出!");
Q.Debug.Display();