/****************************************************************************** Copyright 2005-2007 R2@DevFx.NET DevFx.NET is free software; you can redistribute it and/or modify it under the terms of the Lesser GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. DevFx.NET is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the Lesser GNU General Public License for more details. You should have received a copy of the Lesser GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA /*******************************************************************************/ using System.Configuration; namespace Lskj.DevFx.Config.DotNetConfig { /// /// 配置集合(泛型) /// /// 集合元素类型 public class ConfigCollection : BaseConfigurationElementCollection where T : ConfigurationElement, new() { /// /// 按索引方式获取元素 /// /// 索引 /// 元素 public virtual T this[int index] { get { return (T)this.BaseGet(index); } } /// /// 按键值方式获取元素 /// /// 键值 /// 元素 public virtual T this[object key] { get { return (T)this.BaseGet(key); } } /// /// 集合转换成数组 /// /// 元素数组 public virtual T[] ToArray() { T[] values = new T[this.Count]; this.CopyTo(values, 0); return values; } /// /// 创建新元素 /// /// 新元素 protected override ConfigurationElement CreateNewElement() { return new T(); } } }