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
- RawStylusInputReport.cs
- CheckableControlBaseAdapter.cs
- SpellCheck.cs
- MetadataException.cs
- ParseHttpDate.cs
- SamlAdvice.cs
- Single.cs
- _KerberosClient.cs
- CryptoApi.cs
- BinaryWriter.cs
- ExpressionCopier.cs
- RoutedCommand.cs
- ExtensionDataObject.cs
- CodeVariableDeclarationStatement.cs
- NameValuePair.cs
- GroupBox.cs
- Rect3DValueSerializer.cs
- SQLMembershipProvider.cs
- SessionIDManager.cs
- XmlILTrace.cs
- DynamicRendererThreadManager.cs
- SecurityRequiresReviewAttribute.cs
- ColorTransformHelper.cs
- MobileUserControl.cs
- DockPatternIdentifiers.cs
- XmlWriter.cs
- Win32PrintDialog.cs
- PointAnimationUsingPath.cs
- PrintController.cs
- SqlNotificationEventArgs.cs
- ReservationNotFoundException.cs
- TemplateBamlRecordReader.cs
- ConfigDefinitionUpdates.cs
- SingleSelectRootGridEntry.cs
- StaticExtension.cs
- Rotation3D.cs
- InvokePattern.cs
- HttpProfileGroupBase.cs
- DataGridViewSelectedColumnCollection.cs
- TabPanel.cs
- SiteMapPathDesigner.cs
- CombinedGeometry.cs
- _ConnectionGroup.cs
- XmlEnumAttribute.cs
- ServicesUtilities.cs
- GeneralTransform3DGroup.cs
- InternalsVisibleToAttribute.cs
- WindowsTitleBar.cs
- processwaithandle.cs
- ObjectListCommand.cs
- PathNode.cs
- TextureBrush.cs
- ReaderWriterLockWrapper.cs
- CatalogPart.cs
- TextBoxAutomationPeer.cs
- WebPartDescription.cs
- RedistVersionInfo.cs
- VisualTransition.cs
- LicenseProviderAttribute.cs
- DataGridCommandEventArgs.cs
- ListViewInsertedEventArgs.cs
- SQLGuidStorage.cs
- CryptoProvider.cs
- _SslState.cs
- ResourcesGenerator.cs
- DesignerSerializationVisibilityAttribute.cs
- DoubleLinkListEnumerator.cs
- FillRuleValidation.cs
- NameValueConfigurationCollection.cs
- HttpApplication.cs
- RequestResizeEvent.cs
- SkinBuilder.cs
- StylusTip.cs
- DbgUtil.cs
- XsltException.cs
- relpropertyhelper.cs
- SchemaSetCompiler.cs
- RijndaelCryptoServiceProvider.cs
- MiniLockedBorderGlyph.cs
- OdbcConnectionHandle.cs
- ScriptResourceInfo.cs
- DataGridViewHeaderCell.cs
- SystemWebCachingSectionGroup.cs
- OracleInfoMessageEventArgs.cs
- StreamReader.cs
- WebPartManagerInternals.cs
- ServiceDescription.cs
- DetailsViewInsertedEventArgs.cs
- XmlSchemaExternal.cs
- HttpException.cs
- SystemIPInterfaceProperties.cs
- HyperLinkField.cs
- MailHeaderInfo.cs
- NotSupportedException.cs
- ContentTextAutomationPeer.cs
- HostedHttpRequestAsyncResult.cs
- Deserializer.cs
- TextTreeText.cs
- PageBreakRecord.cs
- DescendentsWalker.cs