Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / ndp / fx / src / DataEntity / System / Data / Common / Utils / DisposableCollectionWrapper.cs / 1 / DisposableCollectionWrapper.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //[....] //----------------------------------------------------------------------------- using System.Collections.Generic; using System.Linq; using System.Text; using System.Diagnostics; namespace System.Data.Common.Utils { internal class DisposableCollectionWrapper: IDisposable, IEnumerable where T : IDisposable { IEnumerable _enumerable; internal DisposableCollectionWrapper(IEnumerable enumerable) { Debug.Assert(enumerable != null, "don't pass in a null enumerable"); _enumerable = enumerable; } public void Dispose() { if(_enumerable != null) { foreach(T item in _enumerable) { if(item != null) { item.Dispose(); } } } } public IEnumerator GetEnumerator() { return _enumerable.GetEnumerator(); } System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() { return ((System.Collections.IEnumerable)_enumerable).GetEnumerator(); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ // // Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //[....] //----------------------------------------------------------------------------- using System.Collections.Generic; using System.Linq; using System.Text; using System.Diagnostics; namespace System.Data.Common.Utils { internal class DisposableCollectionWrapper: IDisposable, IEnumerable where T : IDisposable { IEnumerable _enumerable; internal DisposableCollectionWrapper(IEnumerable enumerable) { Debug.Assert(enumerable != null, "don't pass in a null enumerable"); _enumerable = enumerable; } public void Dispose() { if(_enumerable != null) { foreach(T item in _enumerable) { if(item != null) { item.Dispose(); } } } } public IEnumerator GetEnumerator() { return _enumerable.GetEnumerator(); } System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() { return ((System.Collections.IEnumerable)_enumerable).GetEnumerator(); } } } // 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
- RadioButton.cs
- ListBox.cs
- ReadOnlyObservableCollection.cs
- BehaviorService.cs
- ParenthesizePropertyNameAttribute.cs
- CultureTableRecord.cs
- RoleManagerSection.cs
- ClientFormsAuthenticationCredentials.cs
- RSAPKCS1SignatureFormatter.cs
- EmptyCollection.cs
- FrameDimension.cs
- TextPenaltyModule.cs
- ProtocolsConfigurationEntry.cs
- Image.cs
- DataDesignUtil.cs
- EncodingTable.cs
- StickyNote.cs
- TypedTableBase.cs
- SizeAnimationUsingKeyFrames.cs
- InputLanguageProfileNotifySink.cs
- DefaultValueConverter.cs
- ActivityExecutorSurrogate.cs
- SecurityTokenException.cs
- MultipartContentParser.cs
- WebPartZoneBase.cs
- FixedSOMContainer.cs
- QueryTaskGroupState.cs
- DependencyPropertyChangedEventArgs.cs
- WindowsTokenRoleProvider.cs
- MessagePropertyDescriptionCollection.cs
- MsmqIntegrationBinding.cs
- latinshape.cs
- TableLayoutStyle.cs
- InternalPermissions.cs
- ServiceOperationParameter.cs
- Mapping.cs
- ReliableChannelListener.cs
- PropertyEmitter.cs
- CalendarSelectionChangedEventArgs.cs
- BamlRecords.cs
- CodeTypeOfExpression.cs
- DataException.cs
- ForeignKeyConstraint.cs
- FileDialog.cs
- ResetableIterator.cs
- PrintDialog.cs
- ObfuscateAssemblyAttribute.cs
- WeakEventManager.cs
- HttpCacheParams.cs
- ValidationErrorCollection.cs
- HttpConfigurationSystem.cs
- MenuItemCollectionEditorDialog.cs
- FixedSOMPageElement.cs
- dsa.cs
- XmlNamespaceMapping.cs
- ContentPropertyAttribute.cs
- DbDataRecord.cs
- WeakRefEnumerator.cs
- ProcessThreadCollection.cs
- Size.cs
- SmiRecordBuffer.cs
- TextRangeProviderWrapper.cs
- Animatable.cs
- CardSpaceException.cs
- GenericAuthenticationEventArgs.cs
- ExpressionBindingsDialog.cs
- nulltextnavigator.cs
- ToolboxBitmapAttribute.cs
- Transform.cs
- TextRangeSerialization.cs
- MembershipUser.cs
- RuntimeTransactionHandle.cs
- ThreadStartException.cs
- FixedTextContainer.cs
- XmlNodeReader.cs
- DataRelation.cs
- PartialTrustVisibleAssembliesSection.cs
- PageBuildProvider.cs
- XmlWriterSettings.cs
- HostingEnvironmentWrapper.cs
- HttpRequestCacheValidator.cs
- EntityFrameworkVersions.cs
- DataTrigger.cs
- SelectionEditingBehavior.cs
- UrlPath.cs
- XmlQueryType.cs
- TypeConstant.cs
- AtomEntry.cs
- MaskedTextProvider.cs
- ImageClickEventArgs.cs
- MexHttpBindingCollectionElement.cs
- ParameterCollection.cs
- DateTimeParse.cs
- OrthographicCamera.cs
- ExplicitDiscriminatorMap.cs
- ConfigXmlText.cs
- EventMemberCodeDomSerializer.cs
- DiagnosticTrace.cs
- SelectionEditingBehavior.cs
- ColorKeyFrameCollection.cs