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
- StringFormat.cs
- DataPagerFieldCommandEventArgs.cs
- ColorAnimation.cs
- MenuCommand.cs
- TimelineClockCollection.cs
- UInt64.cs
- SettingsSection.cs
- DesignBindingPicker.cs
- WebPartConnectionsDisconnectVerb.cs
- IgnoreFileBuildProvider.cs
- ToolStripOverflowButton.cs
- DataGridViewColumn.cs
- WebProxyScriptElement.cs
- MiniConstructorInfo.cs
- InvokeSchedule.cs
- _TransmitFileOverlappedAsyncResult.cs
- CultureInfoConverter.cs
- ContainerParagraph.cs
- CodeGenerator.cs
- MessageQueuePermission.cs
- BoundPropertyEntry.cs
- TableLayoutSettingsTypeConverter.cs
- Sql8ConformanceChecker.cs
- ApplicationCommands.cs
- Label.cs
- JournalNavigationScope.cs
- ScrollChrome.cs
- PerfCounters.cs
- DurableInstanceContextProvider.cs
- Parser.cs
- RoutedPropertyChangedEventArgs.cs
- OdbcParameter.cs
- SqlCacheDependency.cs
- Matrix3D.cs
- Msmq4PoisonHandler.cs
- StorageSetMapping.cs
- XamlTemplateSerializer.cs
- DiscoveryDocumentReference.cs
- ImageAnimator.cs
- ContentHostHelper.cs
- StyleBamlTreeBuilder.cs
- AssemblyFilter.cs
- TransformGroup.cs
- RedBlackList.cs
- LowerCaseStringConverter.cs
- AuthenticationModuleElementCollection.cs
- Mutex.cs
- ButtonChrome.cs
- SaveFileDialog.cs
- ProxyWebPartConnectionCollection.cs
- WhiteSpaceTrimStringConverter.cs
- NullReferenceException.cs
- CacheVirtualItemsEvent.cs
- StatusBar.cs
- QilReference.cs
- GatewayDefinition.cs
- ISAPIApplicationHost.cs
- IdentityModelStringsVersion1.cs
- WebBrowserNavigatingEventHandler.cs
- remotingproxy.cs
- PeerIPHelper.cs
- SyndicationSerializer.cs
- oledbconnectionstring.cs
- IPAddress.cs
- ExpandCollapsePatternIdentifiers.cs
- SystemInformation.cs
- ImageBrush.cs
- FileSecurity.cs
- AssemblyHash.cs
- PointLight.cs
- Policy.cs
- DataListItem.cs
- Stacktrace.cs
- AttributeProviderAttribute.cs
- RadioButtonList.cs
- PagePropertiesChangingEventArgs.cs
- ConfigurationValues.cs
- TextPenaltyModule.cs
- CollectionsUtil.cs
- PersonalizationStateQuery.cs
- CommandExpr.cs
- ByteArrayHelperWithString.cs
- COM2ComponentEditor.cs
- ProtectedProviderSettings.cs
- HtmlImage.cs
- HtmlAnchor.cs
- ZipIOExtraFieldElement.cs
- xsdvalidator.cs
- Bitmap.cs
- SecurityException.cs
- LinqDataSourceStatusEventArgs.cs
- TextRangeEditLists.cs
- Signature.cs
- WindowsListViewItemCheckBox.cs
- FontWeight.cs
- XmlCustomFormatter.cs
- OdbcParameterCollection.cs
- ManualResetEvent.cs
- Panel.cs
- WebConvert.cs