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
- ValidatorUtils.cs
- xdrvalidator.cs
- ClientCredentials.cs
- InkCollectionBehavior.cs
- _SSPIWrapper.cs
- SingleAnimationUsingKeyFrames.cs
- DocumentViewerHelper.cs
- SystemResourceKey.cs
- cookiecontainer.cs
- DataBoundLiteralControl.cs
- StrongTypingException.cs
- RequestCacheManager.cs
- GetPageNumberCompletedEventArgs.cs
- XmlDataCollection.cs
- XamlReader.cs
- FormViewActionList.cs
- ExceptionHelpers.cs
- ReferencedCollectionType.cs
- CalendarTable.cs
- PatternMatcher.cs
- CacheDependency.cs
- TemplateKey.cs
- Model3D.cs
- MimeXmlImporter.cs
- SoundPlayer.cs
- MimeFormatter.cs
- Stylesheet.cs
- XmlElementList.cs
- ProxyGenerationError.cs
- OracleMonthSpan.cs
- InternalsVisibleToAttribute.cs
- FontFamily.cs
- BridgeDataReader.cs
- FileBasedResourceGroveler.cs
- DeflateEmulationStream.cs
- SafeNativeMethods.cs
- DataGridItemEventArgs.cs
- Cell.cs
- ProtocolViolationException.cs
- WpfMemberInvoker.cs
- OrderedDictionaryStateHelper.cs
- LastQueryOperator.cs
- TreePrinter.cs
- Transform.cs
- OrderPreservingPipeliningMergeHelper.cs
- RemoteTokenFactory.cs
- PageSettings.cs
- ListItemParagraph.cs
- EntityModelSchemaGenerator.cs
- EdmScalarPropertyAttribute.cs
- CatalogZoneDesigner.cs
- OutKeywords.cs
- BodyGlyph.cs
- LinqDataSourceHelper.cs
- ComponentDispatcher.cs
- Route.cs
- FrameworkElement.cs
- DataGridViewColumnConverter.cs
- ArrayList.cs
- PropertiesTab.cs
- StateMachineExecutionState.cs
- MappingSource.cs
- XmlSchemaExternal.cs
- ScrollableControl.cs
- CompilerLocalReference.cs
- SecurityHeaderLayout.cs
- Model3D.cs
- ObjectListFieldCollection.cs
- ImageMapEventArgs.cs
- Brush.cs
- DefaultMergeHelper.cs
- SR.cs
- RenderTargetBitmap.cs
- RtfFormatStack.cs
- DataGridViewAutoSizeColumnsModeEventArgs.cs
- BitmapEffectInputConnector.cs
- EventLogPermissionEntryCollection.cs
- PointCollection.cs
- TypeBrowser.xaml.cs
- DeviceContext2.cs
- AttributeInfo.cs
- HMACSHA1.cs
- ConsumerConnectionPoint.cs
- ConstraintManager.cs
- MouseEventArgs.cs
- DocumentPaginator.cs
- ExpandCollapseProviderWrapper.cs
- SelectorAutomationPeer.cs
- WebExceptionStatus.cs
- Property.cs
- XhtmlTextWriter.cs
- FlowLayoutPanel.cs
- UpdatePanelTrigger.cs
- SortFieldComparer.cs
- SessionStateSection.cs
- SqlGatherConsumedAliases.cs
- EntityDataSourceView.cs
- RMPermissions.cs
- DefaultCommandConverter.cs
- ThreadStartException.cs