1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93
|
//------------------------------------------------------------------------------
// <copyright file="ProviderSettingsCollection.cs" company="Microsoft">
// Copyright (c) Microsoft Corporation. All rights reserved.
// </copyright>
//------------------------------------------------------------------------------
namespace System.Configuration
{
using System;
using System.Xml;
using System.Configuration;
using System.Collections.Specialized;
using System.Collections;
using System.IO;
using System.Text;
using System.Globalization;
[ConfigurationCollection(typeof(ProviderSettings))]
public sealed class ProviderSettingsCollection : ConfigurationElementCollection
{
static private ConfigurationPropertyCollection _properties;
static ProviderSettingsCollection()
{
// Property initialization
_properties = new ConfigurationPropertyCollection();
}
public ProviderSettingsCollection() :
base(StringComparer.OrdinalIgnoreCase)
{
}
protected internal override ConfigurationPropertyCollection Properties
{
get
{
return _properties;
}
}
public void Add(ProviderSettings provider)
{
if (provider != null)
{
provider.UpdatePropertyCollection();
BaseAdd(provider);
}
}
public void Remove(String name)
{
BaseRemove(name);
}
public void Clear()
{
BaseClear();
}
protected override ConfigurationElement CreateNewElement()
{
return new ProviderSettings();
}
protected override Object GetElementKey(ConfigurationElement element)
{
return ((ProviderSettings)element).Name;
}
public new ProviderSettings this[string key]
{
get
{
return (ProviderSettings)BaseGet(key);
}
}
public ProviderSettings this[int index]
{
get
{
return (ProviderSettings)BaseGet(index);
}
set
{
if (BaseGet(index) != null)
BaseRemoveAt(index);
BaseAdd(index,value);
}
}
}
}
|