exhandlerbase.cs

来自「异常处理包,通用 异常处理包,通用 异常处理包,通用」· CS 代码 · 共 55 行

CS
55
字号
using System;
using ExManagement.Config;

namespace ExManagement.Interface
{
	/// <summary>
	/// 异常处理类的基类
	/// </summary>
	public abstract class ExHandlerBase
	{
		// 存放异常日志记录对象的队列
		protected System.Collections.ArrayList lstLogHandler;

		// 异常配置信息
		protected ExManagerConfig.ExHandlerConfig m_ExHandlerConfig;

		public ExHandlerBase()
		{
			lstLogHandler = new System.Collections.ArrayList();
		}

		/// <summary>
		/// 根据配置文件加载所有的异常记录器对象实例
		/// </summary>
		/// <param name="config"></param>
		public void LoadLogHandler(ExManagerConfig.ExHandlerConfig config)
		{
			m_ExHandlerConfig = config;

			// 遍历当前ExHandler节点的所有LogHandler子节点
			foreach(ExManagerConfig.LogHandlerConfig logConfig in config.LogConfigColletion)
			{
				// 根据配置信息,反射加载异常日志记录对象,并存入队列
				object exLogHandler = System.Activator.CreateInstance(Type.GetType(logConfig.Type));
				lstLogHandler.Add(exLogHandler);
			}
		}

		public ExManagerConfig.ExHandlerConfig ExHanlderConfig
		{
			get
			{
				return m_ExHandlerConfig;
			}
		}

		/// <summary>
		/// 处理异常信息
		/// </summary>
		/// <param name="ex"></param>
		/// <param name="strUserId"></param>
		abstract public string ProcessExeception(Exception ex, string strUserId, string strErrorCode, params string [] strExtention);
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?