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
- Mouse.cs
- Path.cs
- AsnEncodedData.cs
- ListViewItem.cs
- TypefaceCollection.cs
- DataListCommandEventArgs.cs
- WorkflowDefinitionContext.cs
- OperationContractAttribute.cs
- PrintDialog.cs
- AggregationMinMaxHelpers.cs
- DtrList.cs
- XmlSchemaInferenceException.cs
- RenderDataDrawingContext.cs
- FormsAuthenticationUser.cs
- CodeParameterDeclarationExpressionCollection.cs
- HttpResponseInternalBase.cs
- Timeline.cs
- SecUtil.cs
- DataBoundControlHelper.cs
- SchemaNotation.cs
- ObjectDataSourceDisposingEventArgs.cs
- StyleBamlTreeBuilder.cs
- ClientSettingsProvider.cs
- PlacementWorkspace.cs
- ComponentCollection.cs
- DrawingDrawingContext.cs
- objectresult_tresulttype.cs
- PrivacyNoticeElement.cs
- SByte.cs
- QilCloneVisitor.cs
- QueryParameter.cs
- PasswordBox.cs
- ProcessHostConfigUtils.cs
- Helpers.cs
- DiffuseMaterial.cs
- SchemaConstraints.cs
- SelectionWordBreaker.cs
- CannotUnloadAppDomainException.cs
- Html32TextWriter.cs
- oledbmetadatacollectionnames.cs
- HatchBrush.cs
- BuildDependencySet.cs
- WebDescriptionAttribute.cs
- TraceData.cs
- Simplifier.cs
- ProviderSettingsCollection.cs
- LoggedException.cs
- EpmContentSerializerBase.cs
- StandardBindingCollectionElement.cs
- XMLUtil.cs
- LicenseProviderAttribute.cs
- PixelFormat.cs
- precedingquery.cs
- InputBinding.cs
- FileEnumerator.cs
- OdbcConnectionPoolProviderInfo.cs
- DataGridViewIntLinkedList.cs
- ObjectStorage.cs
- ImplicitInputBrush.cs
- PropVariant.cs
- Timer.cs
- DataGridCellAutomationPeer.cs
- Cell.cs
- cache.cs
- StateRuntime.cs
- ResourceManager.cs
- BypassElementCollection.cs
- ApplicationHost.cs
- RegexFCD.cs
- ListView.cs
- SocketPermission.cs
- contentDescriptor.cs
- ImageDrawing.cs
- ColorEditor.cs
- XmlBoundElement.cs
- HttpException.cs
- Listbox.cs
- DependencyProperty.cs
- TileModeValidation.cs
- ReflectionUtil.cs
- QilPatternVisitor.cs
- SafeRegistryKey.cs
- ParseHttpDate.cs
- TransformerConfigurationWizardBase.cs
- WorkflowOperationInvoker.cs
- XPathParser.cs
- TypeCodeDomSerializer.cs
- DataPagerFieldCommandEventArgs.cs
- KeyValueConfigurationCollection.cs
- CodeDOMProvider.cs
- GeometryGroup.cs
- OdbcParameterCollection.cs
- httpstaticobjectscollection.cs
- MDIControlStrip.cs
- ApplicationSecurityManager.cs
- TimeSpanMinutesConverter.cs
- RijndaelManaged.cs
- EventHandlersDesigner.cs
- Baml2006Reader.cs
- AuthenticateEventArgs.cs