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
- SudsWriter.cs
- OdbcConnectionFactory.cs
- x509utils.cs
- SqlClientWrapperSmiStream.cs
- EventHandlersStore.cs
- HttpCapabilitiesEvaluator.cs
- AlgoModule.cs
- EllipseGeometry.cs
- AddInBase.cs
- TiffBitmapDecoder.cs
- HttpResponse.cs
- StylusSystemGestureEventArgs.cs
- HwndHost.cs
- ObservableCollection.cs
- odbcmetadatacollectionnames.cs
- Int32Storage.cs
- DispatcherEventArgs.cs
- InternalSafeNativeMethods.cs
- AvtEvent.cs
- Activator.cs
- ServiceContractGenerator.cs
- TypeSource.cs
- TextElementAutomationPeer.cs
- TextViewSelectionProcessor.cs
- FreezableCollection.cs
- DataBindingCollectionConverter.cs
- DesignerToolStripControlHost.cs
- HorizontalAlignConverter.cs
- HitTestDrawingContextWalker.cs
- VectorConverter.cs
- Int64Storage.cs
- Line.cs
- Activity.cs
- SuppressMessageAttribute.cs
- Int64Converter.cs
- ConfigurationElementProperty.cs
- RuntimeVariablesExpression.cs
- WaitHandle.cs
- SessionStateUtil.cs
- StaticFileHandler.cs
- IndexExpression.cs
- xsdvalidator.cs
- validationstate.cs
- FormParameter.cs
- LoaderAllocator.cs
- ColorPalette.cs
- PenLineCapValidation.cs
- ToolStripPanelRow.cs
- ScriptingProfileServiceSection.cs
- SessionStateItemCollection.cs
- TemplatePartAttribute.cs
- Region.cs
- ProgressBar.cs
- RequiredAttributeAttribute.cs
- WebResourceUtil.cs
- TextBounds.cs
- MeshGeometry3D.cs
- ResolveCompletedEventArgs.cs
- DCSafeHandle.cs
- AsymmetricKeyExchangeFormatter.cs
- MessageContractMemberAttribute.cs
- ImpersonateTokenRef.cs
- HyperLink.cs
- SubMenuStyleCollectionEditor.cs
- FontDifferentiator.cs
- ConfigurationSection.cs
- OutputCacheSettings.cs
- AbstractSvcMapFileLoader.cs
- EncodingTable.cs
- ClosureBinding.cs
- AbandonedMutexException.cs
- EntityModelSchemaGenerator.cs
- Int32AnimationUsingKeyFrames.cs
- RelationshipEnd.cs
- XappLauncher.cs
- UdpDiscoveryEndpoint.cs
- EntityDataSourceQueryBuilder.cs
- XamlBuildTaskServices.cs
- securestring.cs
- XmlAttributes.cs
- ResourceContainer.cs
- NamespaceDecl.cs
- SystemColorTracker.cs
- SystemIPAddressInformation.cs
- TemplateDefinition.cs
- WebPartTransformerCollection.cs
- SafeNativeMethodsOther.cs
- TagPrefixCollection.cs
- SpecularMaterial.cs
- DictionaryKeyPropertyAttribute.cs
- KeyValueSerializer.cs
- SessionStateUtil.cs
- GregorianCalendarHelper.cs
- Message.cs
- UserPersonalizationStateInfo.cs
- AssociationEndMember.cs
- HttpCookiesSection.cs
- PartialCachingControl.cs
- OpenFileDialog.cs
- XmlExtensionFunction.cs