Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WCF / Serialization / System / Runtime / Serialization / Configuration / TypeElementCollection.cs / 1305376 / TypeElementCollection.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.Runtime.Serialization.Configuration { using System; using System.Configuration; using System.Globalization; [ConfigurationCollection(typeof(TypeElement), CollectionType = ConfigurationElementCollectionType.BasicMap)] public sealed class TypeElementCollection : ConfigurationElementCollection { public TypeElementCollection() { } public TypeElement this[int index] { get { TypeElement retval = (TypeElement)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 void Add(TypeElement 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 override ConfigurationElementCollectionType CollectionType { get { return ConfigurationElementCollectionType.BasicMap; } } protected override ConfigurationElement CreateNewElement() { TypeElement retval = new TypeElement(); return retval; } protected override string ElementName { get { return TypeElementCollection.KnownTypeConfig; } } protected override Object GetElementKey(ConfigurationElement element) { if (element == null) { throw System.Runtime.Serialization.DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("element"); } return ((TypeElement)element).Key; } public int IndexOf(TypeElement element) { if (element == null) { throw System.Runtime.Serialization.DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("element"); } return BaseIndexOf(element); } public void Remove(TypeElement 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 RemoveAt(int index) { BaseRemoveAt(index); } const string KnownTypeConfig = "knownType"; } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.Runtime.Serialization.Configuration { using System; using System.Configuration; using System.Globalization; [ConfigurationCollection(typeof(TypeElement), CollectionType = ConfigurationElementCollectionType.BasicMap)] public sealed class TypeElementCollection : ConfigurationElementCollection { public TypeElementCollection() { } public TypeElement this[int index] { get { TypeElement retval = (TypeElement)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 void Add(TypeElement 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 override ConfigurationElementCollectionType CollectionType { get { return ConfigurationElementCollectionType.BasicMap; } } protected override ConfigurationElement CreateNewElement() { TypeElement retval = new TypeElement(); return retval; } protected override string ElementName { get { return TypeElementCollection.KnownTypeConfig; } } protected override Object GetElementKey(ConfigurationElement element) { if (element == null) { throw System.Runtime.Serialization.DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("element"); } return ((TypeElement)element).Key; } public int IndexOf(TypeElement element) { if (element == null) { throw System.Runtime.Serialization.DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("element"); } return BaseIndexOf(element); } public void Remove(TypeElement 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 RemoveAt(int index) { BaseRemoveAt(index); } const string KnownTypeConfig = "knownType"; } } // 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
- WebSysDefaultValueAttribute.cs
- ListViewItemSelectionChangedEvent.cs
- XmlName.cs
- WebPartDisplayModeEventArgs.cs
- RenderData.cs
- HtmlTableCellCollection.cs
- DataPagerCommandEventArgs.cs
- PenContext.cs
- WindowsNonControl.cs
- DataGridViewImageCell.cs
- CompilationAssemblyInstallComponent.cs
- WebPartEditorOkVerb.cs
- ChtmlLinkAdapter.cs
- DisplayNameAttribute.cs
- XPathPatternParser.cs
- HtmlWindow.cs
- SyndicationDeserializer.cs
- LicFileLicenseProvider.cs
- SmtpReplyReaderFactory.cs
- GeometryCombineModeValidation.cs
- StdValidatorsAndConverters.cs
- RowUpdatingEventArgs.cs
- CmsInterop.cs
- Hash.cs
- XmlSerializerSection.cs
- ipaddressinformationcollection.cs
- DetailsViewCommandEventArgs.cs
- HorizontalAlignConverter.cs
- ZipIOExtraFieldZip64Element.cs
- WebEventTraceProvider.cs
- GraphicsContext.cs
- FixedDocument.cs
- BStrWrapper.cs
- StylusShape.cs
- _CookieModule.cs
- DataChangedEventManager.cs
- XmlSerializerAssemblyAttribute.cs
- SafeEventLogReadHandle.cs
- SimpleLine.cs
- ComponentChangedEvent.cs
- ObjectView.cs
- EmbeddedMailObject.cs
- cryptoapiTransform.cs
- ArraySortHelper.cs
- SolidColorBrush.cs
- ClearTypeHintValidation.cs
- PeerMaintainer.cs
- XmlSchemaExternal.cs
- DataColumnChangeEvent.cs
- IndentTextWriter.cs
- DataBinder.cs
- MissingMemberException.cs
- ZipIOLocalFileDataDescriptor.cs
- CompilationSection.cs
- GatewayDefinition.cs
- Attachment.cs
- StronglyTypedResourceBuilder.cs
- NativeActivityAbortContext.cs
- SortDescriptionCollection.cs
- MulticastOption.cs
- TextEditorThreadLocalStore.cs
- WebBrowserEvent.cs
- CallbackValidatorAttribute.cs
- DataBoundLiteralControl.cs
- AssertFilter.cs
- RenderDataDrawingContext.cs
- SerializationFieldInfo.cs
- ColumnMapVisitor.cs
- PerspectiveCamera.cs
- FastEncoderWindow.cs
- CommandValueSerializer.cs
- PopupRootAutomationPeer.cs
- TextBlockAutomationPeer.cs
- DefaultClaimSet.cs
- LoginName.cs
- BitmapEffectGeneralTransform.cs
- AuthenticatingEventArgs.cs
- ListBoxItemAutomationPeer.cs
- InstancePersistenceContext.cs
- ProgressBar.cs
- SqlEnums.cs
- SystemDropShadowChrome.cs
- SrgsNameValueTag.cs
- ToolboxItemCollection.cs
- Point4D.cs
- RewritingSimplifier.cs
- ChangeInterceptorAttribute.cs
- ConfigurationLocation.cs
- HttpCachePolicyElement.cs
- Soap12ProtocolReflector.cs
- ConfigXmlComment.cs
- ImageCodecInfo.cs
- QueryOutputWriter.cs
- CornerRadiusConverter.cs
- EventlogProvider.cs
- HttpModulesSection.cs
- PersistenceTypeAttribute.cs
- InstanceDescriptor.cs
- NumberFunctions.cs
- TemplateBuilder.cs