Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / 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
- OdbcException.cs
- invalidudtexception.cs
- CryptoKeySecurity.cs
- WrapPanel.cs
- QueryOptionExpression.cs
- input.cs
- PasswordTextContainer.cs
- HtmlElementCollection.cs
- TypeBuilderInstantiation.cs
- MSAAWinEventWrap.cs
- KnownTypes.cs
- PropertyGeneratedEventArgs.cs
- UInt32Converter.cs
- TemplateApplicationHelper.cs
- StatusBar.cs
- DataSetMappper.cs
- AccessText.cs
- ArrangedElement.cs
- VectorAnimationUsingKeyFrames.cs
- ChangeInterceptorAttribute.cs
- XmlNode.cs
- Assembly.cs
- ListViewSortEventArgs.cs
- Parser.cs
- ComponentConverter.cs
- TypefaceMap.cs
- Border.cs
- StandardCommands.cs
- webeventbuffer.cs
- StreamInfo.cs
- SqlProviderServices.cs
- AbstractSvcMapFileLoader.cs
- DateTimeParse.cs
- TextEffect.cs
- AudioException.cs
- uribuilder.cs
- XmlRootAttribute.cs
- DocumentPageHost.cs
- DbParameterHelper.cs
- DbConnectionStringCommon.cs
- ConfigUtil.cs
- ObjectTokenCategory.cs
- MarkupCompilePass1.cs
- SettingsAttributeDictionary.cs
- TabControlDesigner.cs
- SQLBytes.cs
- MappingItemCollection.cs
- Image.cs
- DesignerActionGlyph.cs
- MD5.cs
- RangeValidator.cs
- SqlProviderServices.cs
- RtfToken.cs
- ContextQuery.cs
- ObjectFactoryCodeDomTreeGenerator.cs
- Attributes.cs
- CryptoKeySecurity.cs
- Constraint.cs
- MultiSelectRootGridEntry.cs
- IdentitySection.cs
- Publisher.cs
- NullRuntimeConfig.cs
- ReadOnlyDataSourceView.cs
- UIElement3DAutomationPeer.cs
- PlainXmlSerializer.cs
- TextUtf8RawTextWriter.cs
- Debug.cs
- DataGridViewTextBoxColumn.cs
- WebReferenceCollection.cs
- PageParserFilter.cs
- Query.cs
- PropertyDescriptorComparer.cs
- ModifierKeysValueSerializer.cs
- CodeComment.cs
- KeyGestureConverter.cs
- NameSpaceExtractor.cs
- UnsafeNativeMethods.cs
- DirectoryObjectSecurity.cs
- TableLayoutRowStyleCollection.cs
- TextCompositionManager.cs
- PersonalizationProviderCollection.cs
- WrapPanel.cs
- ProviderConnectionPoint.cs
- SqlConnection.cs
- HttpSysSettings.cs
- OracleTimeSpan.cs
- SerialPort.cs
- SQLDecimalStorage.cs
- RSACryptoServiceProvider.cs
- X509ChainPolicy.cs
- XmlNamedNodeMap.cs
- WindowsPrincipal.cs
- StringFreezingAttribute.cs
- XNameConverter.cs
- NumberAction.cs
- ItemCheckedEvent.cs
- WpfPayload.cs
- COM2PropertyBuilderUITypeEditor.cs
- RC2CryptoServiceProvider.cs
- HttpCookiesSection.cs