Exemplo n.º 1
0
        /// <summary>调试输出</summary>
        /// <param name="colorIndex">颜色方案</param>
        /// <param name="action">操作</param>
        /// <param name="args">参数</param>
        public void WriteLog(Int32 colorIndex, String action, params Object[] args)
        {
            if (!Debug)
            {
                return;
            }

            if (IsConsole)
            {
                ConsoleColor color = Console.ForegroundColor;

                // 缩进
                SetDebugIndent();

                // 红色动作
                Console.ForegroundColor = colors[colorIndex][0];
                Console.Write(action);

                if (args != null && args.Length > 0)
                {
                    // 白色参数
                    //Console.ForegroundColor = ConsoleColor.White;

                    for (int i = 0; i < args.Length; i++)
                    {
                        Console.ForegroundColor = colors[colorIndex][i % colors.Length + 1];
                        Console.Write(" ");
                        Console.Write(args[i]);
                    }
                }

                Console.ForegroundColor = color;
                Console.WriteLine();
            }
            else
            {
                // 缩进
                SetDebugIndent();

                // 动作
                XTrace.Write(action);

                if (args != null && args.Length > 0)
                {
                    for (int i = 0; i < args.Length; i++)
                    {
                        XTrace.Write(" ");
                        XTrace.Write("" + args[i]);
                    }
                }

                XTrace.WriteLine("");
            }
        }
Exemplo n.º 2
0
        /// <summary>设置调试缩进</summary>
        /// <param name="indent">缩进</param>
        public void SetDebugIndent(Int32 indent)
        {
            if (!Debug)
            {
                return;
            }

            if (IsConsole)
            {
                try
                {
                    Console.CursorLeft = indent * 4;
                }
                catch { }
            }
            else
            {
                var msg = new String(' ', indent * 4);
                XTrace.Write(msg);
            }
        }