Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Configuration / System / Configuration / ConnectionStringSettingsCollection.cs / 1305376 / ConnectionStringSettingsCollection.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Configuration {
using System;
using System.Xml;
using System.Configuration;
using System.Collections.Specialized;
using System.Collections;
using System.IO;
using System.Text;
// class ConnectionStringsSection
[ConfigurationCollection(typeof(ConnectionStringSettings))]
public sealed class ConnectionStringSettingsCollection : ConfigurationElementCollection {
private static ConfigurationPropertyCollection _properties;
static ConnectionStringSettingsCollection() {
// Property initialization
_properties = new ConfigurationPropertyCollection();
}
protected internal override ConfigurationPropertyCollection Properties {
get {
return _properties;
}
}
public ConnectionStringSettingsCollection()
: base(StringComparer.OrdinalIgnoreCase) {
}
public ConnectionStringSettings this[int index] {
get {
return (ConnectionStringSettings)BaseGet(index);
}
set {
if (BaseGet(index) != null) {
BaseRemoveAt(index);
}
BaseAdd(index, value);
}
}
new public ConnectionStringSettings this[string name] {
get {
return (ConnectionStringSettings)BaseGet(name);
}
}
public int IndexOf(ConnectionStringSettings settings) {
return BaseIndexOf(settings);
}
// the connection string behavior is strange in that is acts kind of like a
// basic map and partially like a add remove clear collection
// Overriding these methods allows for the specific behaviors to be
// patterened
protected override void BaseAdd(int index, ConfigurationElement element) {
if (index == -1) {
BaseAdd(element, false);
}
else {
base.BaseAdd(index, element);
}
}
public void Add(ConnectionStringSettings settings) {
BaseAdd(settings);
}
public void Remove(ConnectionStringSettings settings) {
if (BaseIndexOf(settings) >= 0) {
BaseRemove(settings.Key);
}
}
public void RemoveAt(int index) {
BaseRemoveAt(index);
}
public void Remove(string name) {
BaseRemove(name);
}
protected override ConfigurationElement CreateNewElement() {
return new ConnectionStringSettings();
}
protected override Object GetElementKey(ConfigurationElement element) {
return ((ConnectionStringSettings)element).Key;
}
public void Clear() {
BaseClear();
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- NavigationWindow.cs
- RefExpr.cs
- SystemWebCachingSectionGroup.cs
- NamedElement.cs
- MiniAssembly.cs
- TrustLevel.cs
- PageEventArgs.cs
- RuleRef.cs
- MaskedTextProvider.cs
- WindowsFormsSynchronizationContext.cs
- SystemColors.cs
- BaseCodeDomTreeGenerator.cs
- TraceListener.cs
- SimpleTableProvider.cs
- rsa.cs
- EntitySetBase.cs
- AccessDataSource.cs
- SqlDataSourceCommandEventArgs.cs
- Font.cs
- XmlSchemaComplexType.cs
- AuthenticodeSignatureInformation.cs
- ServiceHostFactory.cs
- ProfileParameter.cs
- AppLevelCompilationSectionCache.cs
- LicenseException.cs
- ServiceDescriptionReflector.cs
- XmlUtf8RawTextWriter.cs
- ItemsPresenter.cs
- XmlByteStreamReader.cs
- RelationshipDetailsRow.cs
- ItemDragEvent.cs
- InstanceHandle.cs
- MenuItem.cs
- DBCommand.cs
- ScriptMethodAttribute.cs
- DiscardableAttribute.cs
- XmlSerializerNamespaces.cs
- EFAssociationProvider.cs
- TimeoutException.cs
- EventPrivateKey.cs
- X509Certificate2.cs
- httpapplicationstate.cs
- LinkClickEvent.cs
- ScriptRef.cs
- EncoderReplacementFallback.cs
- TemplateNameScope.cs
- XMLSyntaxException.cs
- TcpClientSocketManager.cs
- SiteMapNode.cs
- InputMethodStateTypeInfo.cs
- ToggleButtonAutomationPeer.cs
- GridViewCellAutomationPeer.cs
- DesignBindingValueUIHandler.cs
- TextOutput.cs
- KnownBoxes.cs
- FigureParagraph.cs
- Mapping.cs
- SamlEvidence.cs
- AsnEncodedData.cs
- EmptyEnumerator.cs
- IsolatedStorageException.cs
- TextServicesCompartmentContext.cs
- InkCanvasFeedbackAdorner.cs
- PageTheme.cs
- BitmapInitialize.cs
- DiscoveryCallbackBehavior.cs
- AssociationTypeEmitter.cs
- UrlMappingsModule.cs
- SearchForVirtualItemEventArgs.cs
- SwitchLevelAttribute.cs
- XmlDataDocument.cs
- JsonServiceDocumentSerializer.cs
- PackageController.cs
- DbConnectionHelper.cs
- PLINQETWProvider.cs
- NominalTypeEliminator.cs
- TypeConverterAttribute.cs
- ContextMenuService.cs
- NameValueCollection.cs
- JulianCalendar.cs
- ByteAnimationUsingKeyFrames.cs
- OutputCacheProfileCollection.cs
- Automation.cs
- StateRuntime.cs
- FunctionImportElement.cs
- CallbackWrapper.cs
- Image.cs
- GridView.cs
- ComponentSerializationService.cs
- WinFormsUtils.cs
- BaseValidatorDesigner.cs
- metadatamappinghashervisitor.cs
- XmlEncodedRawTextWriter.cs
- X509Extension.cs
- LinkedResource.cs
- ButtonBaseAdapter.cs
- BitmapEffect.cs
- PlatformNotSupportedException.cs
- SessionStateItemCollection.cs
- BaseProcessor.cs