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
- BitmapInitialize.cs
- CodeTypeReference.cs
- PrintPreviewDialog.cs
- BaseValidator.cs
- WindowsToolbarAsMenu.cs
- PreProcessInputEventArgs.cs
- SelectionEditor.cs
- SystemResources.cs
- TextBoxBase.cs
- MetadataSource.cs
- _UriTypeConverter.cs
- DataGridViewCheckBoxColumn.cs
- ConstructorExpr.cs
- WebConfigurationHost.cs
- IndexingContentUnit.cs
- WebResponse.cs
- Button.cs
- RenderData.cs
- RelatedEnd.cs
- Interlocked.cs
- _IPv4Address.cs
- AttributeEmitter.cs
- NumberSubstitution.cs
- ApplicationContext.cs
- ToolboxControl.cs
- ImageButton.cs
- VisualStyleInformation.cs
- XPathBinder.cs
- RegexMatch.cs
- OleDbMetaDataFactory.cs
- GroupBoxRenderer.cs
- RSAPKCS1KeyExchangeFormatter.cs
- StsCommunicationException.cs
- SpeechRecognitionEngine.cs
- StringDictionary.cs
- WorkflowMessageEventHandler.cs
- InputMethod.cs
- IIS7WorkerRequest.cs
- OleDbConnectionInternal.cs
- SocketAddress.cs
- Terminate.cs
- SqlBuilder.cs
- ECDiffieHellmanCngPublicKey.cs
- TimeoutException.cs
- MDIControlStrip.cs
- HandlerMappingMemo.cs
- UnsafeNativeMethods.cs
- LineMetrics.cs
- WindowsScrollBarBits.cs
- HttpCacheParams.cs
- ManagedWndProcTracker.cs
- CompilationSection.cs
- ShapeTypeface.cs
- InternalCache.cs
- DbProviderServices.cs
- ASCIIEncoding.cs
- RawUIStateInputReport.cs
- WindowsRegion.cs
- OdbcParameter.cs
- StateDesigner.Helpers.cs
- RsaKeyIdentifierClause.cs
- ToolStripComboBox.cs
- SrgsSemanticInterpretationTag.cs
- FixedSOMTextRun.cs
- ScrollViewerAutomationPeer.cs
- TextModifier.cs
- RoutedCommand.cs
- PriorityChain.cs
- ContextStack.cs
- Thickness.cs
- CombinedHttpChannel.cs
- contentDescriptor.cs
- DispatcherOperation.cs
- ChooseAction.cs
- _Rfc2616CacheValidators.cs
- XmlParserContext.cs
- TcpServerChannel.cs
- SqlXml.cs
- DesignRelationCollection.cs
- DataSysAttribute.cs
- XmlSchema.cs
- SqlConnectionPoolGroupProviderInfo.cs
- ListSortDescriptionCollection.cs
- LinqExpressionNormalizer.cs
- AdjustableArrowCap.cs
- WorkflowRuntimeServiceElementCollection.cs
- AuthStoreRoleProvider.cs
- BrushConverter.cs
- GeneralTransform3DCollection.cs
- XmlChoiceIdentifierAttribute.cs
- LookupBindingPropertiesAttribute.cs
- ObjectStateEntry.cs
- DurableEnlistmentState.cs
- StickyNoteContentControl.cs
- DecimalConverter.cs
- QueryContext.cs
- TdsParameterSetter.cs
- RequestValidator.cs
- SafeHandle.cs
- ServiceReference.cs