做视频网站需要哪些条件,wordpress 下载工具,微信开发哪家公司好,娄底建设网站公司文章目录 前言Nuget 环境安装代码使用打印结果 总结 前言
有时候我们想要靠打印获得程序信息#xff0c;因为Dubeg模式需要一点一点断点进入进出#xff0c;但是我们觉得断点运行实在是太慢了#xff0c;还是直接打印后找结果会好一点。
Nuget 环境安装 想自己写的话可以看… 文章目录 前言Nuget 环境安装代码使用打印结果 总结 前言
有时候我们想要靠打印获得程序信息因为Dubeg模式需要一点一点断点进入进出但是我们觉得断点运行实在是太慢了还是直接打印后找结果会好一点。
Nuget 环境安装 想自己写的话可以看我之前的文章
C# 控制台彩色打印
代码
新建一个Utils里面放一个LogHelper using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Console Colorful.Console;
namespace PubSubTest.Utils
{public static class LogHelper{/// summary/// 打印等级/// /summarypublic static int PrintLevel 0;/// summary/// 堆栈追踪/// /summary/// param namedeep追踪深度,0为打印当前1为打印上一层/param/// returns/returnsprivate static string TraceMethodInfo(int deep){//Color.Browndeep 2;string info ;try{StackFrame st new System.Diagnostics.StackTrace(deep, true).GetFrame(0);info ${st.GetMethod().DeclaringType.FullName} :{st.GetFileLineNumber()};}catch (Exception e){Console.WriteLine(e.Message);}//Color.Brown;return info;}/// summary/// 彩色深度打印/// /summary/// param namemsg信息/param/// param namedeep深度/param/// param namestate等级/parampublic static void Log(string msg, int deep 0, LogLevel state LogLevel.Debug){if ((int)state PrintLevel){ColorPrint(${state.ToString()}\t msg, (int)state);var deepMsg TraceMethodInfo(deep);Console.WriteLine(\t deepMsg, (int)state);}}private static void ColorPrint(string msg, int state){switch (state){case 0:Console.WriteLine(msg);break;case 1:Console.WriteLine(msg, Color.LightGreen);break;case 2:Console.WriteLine(msg, Color.Yellow);break;case 3:Console.WriteLine(msg, Color.Red);break;case 4:Console.WriteLine(msg, Color.LightPink);break;}}}/// summary/// 日志等级/// /summarypublic enum LogLevel : int{Debug 0,Info 1,Warn 2,Error 3,Must 4}
}
Tips:using Console Colorful.Console;这句话别忘记了
使用 internal class Program{public static Action action;public static PubSubHelper helper new PubSubHelper();static void Main(string[] args){Test();//Console.WriteLine(LogLevel.Warn.ToString());Console.ReadLine();}public static void Test(){LogHelper.Log(打印测试,0);LogHelper.Log(打印测试,1);LogHelper.Log(打印测试,1,LogLevel.Debug);LogHelper.Log(打印测试,1,LogLevel.Info);LogHelper.Log(打印测试,1,LogLevel.Warn);LogHelper.Log(打印测试,1,LogLevel.Error);LogHelper.Log(打印测试,1,LogLevel.Must);}}
打印结果 总结
大家可以根据深度和色彩自己自定义工具输出。