extensionconfig.cs
来自「该项目中对 SQLHelper 类进行了简单封装」· CS 代码 · 共 87 行
CS
87 行
/*
* ExtensionConfig.cs @Microsoft Visual Studio 2005 <.NET Framework 2.0>
* AfritXia
* 2007-05-08
*
* Copyright(c) http://www.AfritXia.NET/
*
*/
using System;
using System.Collections.Generic;
using System.Xml;
namespace NET.AfritXia.MyHome.SystemConf
{
/// <summary>
/// 扩展配置信息
/// </summary>
public class ExtensionConfig
{
// 扩展工厂类集合
private List<ExtensionFactoryClass> m_factoryClassList = new List<ExtensionFactoryClass>();
#region 类 ExtensionConfig 构造器
/// <summary>
/// 类 ExtensionConfig 默认构造器
/// </summary>
private ExtensionConfig()
{
}
#endregion
/// <summary>
/// 获取群类型集合
/// </summary>
public IList<ExtensionFactoryClass> ExtensionFactoryClassList
{
get
{
return this.m_factoryClassList;
}
}
/// <summary>
/// 创建扩展配置信息实例
/// </summary>
/// <param name="rootConfNode"></param>
/// <returns></returns>
public static ExtensionConfig CreateInstance(XmlNode rootConfNode)
{
ExtensionConfig extensionConf = new ExtensionConfig();
if (rootConfNode == null)
return extensionConf;
// 获取扩展节点集合
XmlNodeList extensionNodeList = rootConfNode.SelectNodes("extension[@enabled='true']");
if (extensionNodeList == null || extensionNodeList.Count <= 0)
return extensionConf;
// 创建扩展工厂类集合
extensionConf.m_factoryClassList = new List<ExtensionFactoryClass>();
foreach (XmlNode extensionNode in extensionNodeList)
{
ExtensionFactoryClass efc = new ExtensionFactoryClass();
// 优先级
string strPriority = null;
if (extensionNode.Attributes["priority"] != null)
strPriority = extensionNode.Attributes["priority"].Value;
// 设置优先级
efc.Priority = Convert.ToInt32(strPriority);
// 设置群类型名称
efc.FactoryType = Type.GetType(extensionNode.InnerText);
// 添加扩展类到集合
extensionConf.m_factoryClassList.Add(efc);
}
return extensionConf;
}
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?