Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WCF / Serialization / System / Runtime / Serialization / Configuration / DeclaredTypeElementCollection.cs / 1305376 / DeclaredTypeElementCollection.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.Runtime.Serialization.Configuration { using System; using System.Configuration; using System.Globalization; [ConfigurationCollection(typeof(DeclaredTypeElement))] public sealed class DeclaredTypeElementCollection : ConfigurationElementCollection { public DeclaredTypeElementCollection() { } public DeclaredTypeElement this[int index] { get { DeclaredTypeElement retval = (DeclaredTypeElement)BaseGet(index); return retval; } set { // Only validate input if config is not Read-Only, otherwise // let BaseAdd throw appropriate exception if (!this.IsReadOnly()) { if (value == null) { throw System.Runtime.Serialization.DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("value"); } if (BaseGet(index) != null) { BaseRemoveAt(index); } } BaseAdd(index, value); } } public new DeclaredTypeElement this[string typeName] { get { if (String.IsNullOrEmpty(typeName)) { throw System.Runtime.Serialization.DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("typeName"); } DeclaredTypeElement retval = (DeclaredTypeElement)BaseGet(typeName); return retval; } set { // Only validate input if config is not Read-Only, otherwise // let Add throw appropriate exception if (!this.IsReadOnly()) { if (String.IsNullOrEmpty(typeName)) { throw System.Runtime.Serialization.DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("typeName"); } if (value == null) { throw System.Runtime.Serialization.DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("value"); } if (BaseGet(typeName) != null) { BaseRemove(typeName); } else { throw System.Runtime.Serialization.DiagnosticUtility.ExceptionUtility.ThrowHelperError(new IndexOutOfRangeException(SR.GetString(SR.ConfigIndexOutOfRange, typeName))); } } Add(value); } } public void Add(DeclaredTypeElement element) { // Only validate input if config is not Read-Only, otherwise // let BaseAdd throw appropriate exception if (!this.IsReadOnly()) { if (element == null) { throw System.Runtime.Serialization.DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("element"); } } BaseAdd(element); } public void Clear() { BaseClear(); } public bool Contains(string typeName) { if (String.IsNullOrEmpty(typeName)) { throw System.Runtime.Serialization.DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("typeName"); } return this.BaseGet(typeName) != null; } protected override ConfigurationElement CreateNewElement() { DeclaredTypeElement retval = new DeclaredTypeElement(); return retval; } protected override Object GetElementKey(ConfigurationElement element) { if (element == null) { throw System.Runtime.Serialization.DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("element"); } return ((DeclaredTypeElement)element).Type; } public int IndexOf(DeclaredTypeElement element) { if (element == null) { throw System.Runtime.Serialization.DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("element"); } return BaseIndexOf(element); } public void Remove(DeclaredTypeElement element) { // Only validate input if config is not Read-Only, otherwise // let BaseRemove throw appropriate exception if (!this.IsReadOnly()) { if (element == null) { throw System.Runtime.Serialization.DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("element"); } } BaseRemove(this.GetElementKey(element)); } public void Remove(string typeName) { // Only validate input if config is not Read-Only, otherwise // let BaseRemove throw appropriate exception if (!this.IsReadOnly()) { if (String.IsNullOrEmpty(typeName)) { throw System.Runtime.Serialization.DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("typeName"); } } BaseRemove(typeName); } public void RemoveAt(int index) { BaseRemoveAt(index); } } } // 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
- WmfPlaceableFileHeader.cs
- Atom10ItemFormatter.cs
- FrameworkContextData.cs
- TrackBar.cs
- QilInvokeEarlyBound.cs
- MemberCollection.cs
- versioninfo.cs
- XmlAnyAttributeAttribute.cs
- ImageListImage.cs
- OpacityConverter.cs
- XmlCharCheckingWriter.cs
- PanelStyle.cs
- DataGridTablesFactory.cs
- BufferModesCollection.cs
- Grammar.cs
- InputReferenceExpression.cs
- Msec.cs
- PeerValidationBehavior.cs
- InfoCardRSAOAEPKeyExchangeFormatter.cs
- EnvironmentPermission.cs
- CultureInfoConverter.cs
- mactripleDES.cs
- SupportsEventValidationAttribute.cs
- EdmFunction.cs
- SupportsEventValidationAttribute.cs
- GridViewColumnHeaderAutomationPeer.cs
- FakeModelPropertyImpl.cs
- _LocalDataStoreMgr.cs
- SoapReflectionImporter.cs
- PointAnimationBase.cs
- SynchronizationContext.cs
- DataGridColumnCollection.cs
- SqlClientPermission.cs
- ControlEvent.cs
- ClientSettingsSection.cs
- AssemblyResourceLoader.cs
- SrgsOneOf.cs
- ScrollProperties.cs
- PasswordRecovery.cs
- AnchoredBlock.cs
- XmlCodeExporter.cs
- EmptyWithCancelationCheckWorkItem.cs
- ComIntegrationManifestGenerator.cs
- BitConverter.cs
- TextBoxLine.cs
- CorrelationToken.cs
- RestClientProxyHandler.cs
- ToolStripDropDownMenu.cs
- ColumnMapTranslator.cs
- VolatileEnlistmentMultiplexing.cs
- Peer.cs
- CapabilitiesRule.cs
- StyleXamlTreeBuilder.cs
- COSERVERINFO.cs
- ZipIOExtraFieldPaddingElement.cs
- RelativeSource.cs
- WindowsAltTab.cs
- DllNotFoundException.cs
- HtmlContainerControl.cs
- CheckBoxFlatAdapter.cs
- TextLine.cs
- OdbcConnectionHandle.cs
- ProviderSettings.cs
- ConfigurationSectionGroup.cs
- ClrProviderManifest.cs
- ContractReference.cs
- Brush.cs
- StoreAnnotationsMap.cs
- BooleanAnimationUsingKeyFrames.cs
- TemplateFactory.cs
- DispatcherExceptionEventArgs.cs
- Composition.cs
- DecoderReplacementFallback.cs
- TextTreeObjectNode.cs
- SafeSecurityHandles.cs
- HttpCachePolicy.cs
- ThicknessAnimation.cs
- Win32Native.cs
- CounterSample.cs
- ScriptResourceInfo.cs
- Size.cs
- documentsequencetextcontainer.cs
- EdgeProfileValidation.cs
- CacheVirtualItemsEvent.cs
- SqlHelper.cs
- ButtonBaseDesigner.cs
- Random.cs
- XNodeSchemaApplier.cs
- GenericUriParser.cs
- SevenBitStream.cs
- FreeFormDragDropManager.cs
- Section.cs
- Span.cs
- AttributeCollection.cs
- CompilerTypeWithParams.cs
- UrlMappingsSection.cs
- XmlWrappingWriter.cs
- XXXInfos.cs
- XmlTextReaderImpl.cs
- RolePrincipal.cs