Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / ndp / fx / src / Net / System / Net / Mail / LinkedResourceCollection.cs / 1 / LinkedResourceCollection.cs
using System; using System.Collections.ObjectModel; namespace System.Net.Mail { public sealed class LinkedResourceCollection : Collection, IDisposable { bool disposed = false; internal LinkedResourceCollection() { } public void Dispose() { if(disposed){ return; } foreach (LinkedResource resource in this) { resource.Dispose(); } Clear(); disposed = true; } protected override void RemoveItem(int index){ if (disposed) { throw new ObjectDisposedException(this.GetType().FullName); } base.RemoveItem(index); } protected override void ClearItems(){ if (disposed) { throw new ObjectDisposedException(this.GetType().FullName); } base.ClearItems(); } protected override void SetItem(int index, LinkedResource item){ if (disposed) { throw new ObjectDisposedException(this.GetType().FullName); } if(item==null) { throw new ArgumentNullException("item"); } base.SetItem(index,item); } protected override void InsertItem(int index, LinkedResource item){ if (disposed) { throw new ObjectDisposedException(this.GetType().FullName); } if(item==null){ throw new ArgumentNullException("item"); } base.InsertItem(index,item); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. using System; using System.Collections.ObjectModel; namespace System.Net.Mail { public sealed class LinkedResourceCollection : Collection , IDisposable { bool disposed = false; internal LinkedResourceCollection() { } public void Dispose() { if(disposed){ return; } foreach (LinkedResource resource in this) { resource.Dispose(); } Clear(); disposed = true; } protected override void RemoveItem(int index){ if (disposed) { throw new ObjectDisposedException(this.GetType().FullName); } base.RemoveItem(index); } protected override void ClearItems(){ if (disposed) { throw new ObjectDisposedException(this.GetType().FullName); } base.ClearItems(); } protected override void SetItem(int index, LinkedResource item){ if (disposed) { throw new ObjectDisposedException(this.GetType().FullName); } if(item==null) { throw new ArgumentNullException("item"); } base.SetItem(index,item); } protected override void InsertItem(int index, LinkedResource item){ if (disposed) { throw new ObjectDisposedException(this.GetType().FullName); } if(item==null){ throw new ArgumentNullException("item"); } base.InsertItem(index,item); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- Token.cs
- CodeTypeConstructor.cs
- NotifyParentPropertyAttribute.cs
- IPEndPoint.cs
- BaseTemplateBuildProvider.cs
- TdsValueSetter.cs
- ContainerSelectorGlyph.cs
- TemplatedMailWebEventProvider.cs
- ManageRequest.cs
- Page.cs
- XmlSchemaObject.cs
- ComponentCollection.cs
- TextRenderer.cs
- BitmapEffectInputData.cs
- MarkupObject.cs
- TagMapInfo.cs
- TypeDescriptionProvider.cs
- CompressionTransform.cs
- GridLengthConverter.cs
- CodeIdentifiers.cs
- ThreadPool.cs
- DictionaryContent.cs
- HitTestParameters3D.cs
- WizardPanelChangingEventArgs.cs
- TableAdapterManagerGenerator.cs
- IItemContainerGenerator.cs
- Rotation3D.cs
- QueryCreatedEventArgs.cs
- DataSourceCacheDurationConverter.cs
- Path.cs
- SolidColorBrush.cs
- MouseDevice.cs
- FragmentQueryProcessor.cs
- Authorization.cs
- XPathNavigatorKeyComparer.cs
- StatementContext.cs
- CustomValidator.cs
- PrivilegedConfigurationManager.cs
- IfAction.cs
- XD.cs
- ResourceProperty.cs
- ShapeTypeface.cs
- EntityViewContainer.cs
- TypedServiceChannelBuilder.cs
- CoreChannel.cs
- DrawingContext.cs
- EdmItemCollection.cs
- DesignerPerfEventProvider.cs
- CaseStatementSlot.cs
- SoapIncludeAttribute.cs
- WebPartDisplayModeCancelEventArgs.cs
- Thumb.cs
- GridProviderWrapper.cs
- TextBoxRenderer.cs
- Matrix.cs
- DateTimeEditor.cs
- oledbconnectionstring.cs
- FileNameEditor.cs
- SqlOuterApplyReducer.cs
- CodeVariableDeclarationStatement.cs
- CachedBitmap.cs
- DefaultObjectMappingItemCollection.cs
- WebPartAuthorizationEventArgs.cs
- CustomErrorCollection.cs
- DataTrigger.cs
- ConfigurationElement.cs
- QueryPageSettingsEventArgs.cs
- UdpUtility.cs
- CmsInterop.cs
- KeyValuePairs.cs
- Ipv6Element.cs
- KeyboardInputProviderAcquireFocusEventArgs.cs
- MatrixTransform.cs
- CompositeDataBoundControl.cs
- SiteOfOriginContainer.cs
- ClientSideProviderDescription.cs
- CapabilitiesUse.cs
- PointValueSerializer.cs
- AsyncResult.cs
- OwnerDrawPropertyBag.cs
- TypeDescriptor.cs
- SystemIPInterfaceProperties.cs
- SqlVersion.cs
- SystemColors.cs
- ListSortDescription.cs
- Triangle.cs
- ViewGenResults.cs
- BitmapEffectGroup.cs
- DataSvcMapFile.cs
- PixelShader.cs
- DataObjectFieldAttribute.cs
- ListParaClient.cs
- ExtenderProviderService.cs
- EndpointDiscoveryMetadataCD1.cs
- XmlSchemaComplexType.cs
- CollectionDataContract.cs
- CommandManager.cs
- WebEvents.cs
- StreamWithDictionary.cs
- MatrixAnimationBase.cs