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
- TextLineResult.cs
- _ConnectOverlappedAsyncResult.cs
- HttpProcessUtility.cs
- ForwardPositionQuery.cs
- CheckableControlBaseAdapter.cs
- XmlMemberMapping.cs
- InputLangChangeEvent.cs
- OptimisticConcurrencyException.cs
- EnumerableValidator.cs
- Image.cs
- ErrorStyle.cs
- PartialArray.cs
- GridToolTip.cs
- ValueProviderWrapper.cs
- DurableInstanceManager.cs
- ScriptControl.cs
- RSAPKCS1SignatureDeformatter.cs
- Registry.cs
- WorkflowMarkupSerializerMapping.cs
- Domain.cs
- BypassElementCollection.cs
- QueryExtender.cs
- LedgerEntry.cs
- ContainerControlDesigner.cs
- BatchWriter.cs
- _NtlmClient.cs
- ServiceHostingEnvironmentSection.cs
- TreeNodeCollectionEditor.cs
- ToolStripHighContrastRenderer.cs
- PathSegment.cs
- ObjectQueryState.cs
- DataSetFieldSchema.cs
- BindingElement.cs
- EntityClassGenerator.cs
- DbTransaction.cs
- XmlSchemaValidator.cs
- Lazy.cs
- CompareValidator.cs
- BindStream.cs
- IHttpResponseInternal.cs
- RecognizerStateChangedEventArgs.cs
- Int32CollectionValueSerializer.cs
- NamespaceEmitter.cs
- MissingFieldException.cs
- DSACryptoServiceProvider.cs
- ListViewAutomationPeer.cs
- LinqDataSourceHelper.cs
- DataMemberAttribute.cs
- HttpResponse.cs
- HMACMD5.cs
- SqlPersonalizationProvider.cs
- LongValidator.cs
- HttpProcessUtility.cs
- BoundingRectTracker.cs
- WizardForm.cs
- DispatcherHooks.cs
- DbBuffer.cs
- TextOutput.cs
- MessageBox.cs
- Propagator.cs
- ToolStripCodeDomSerializer.cs
- DetailsViewPagerRow.cs
- TextEffect.cs
- OptimizedTemplateContent.cs
- VariableDesigner.xaml.cs
- DataColumnPropertyDescriptor.cs
- WebUtil.cs
- sapiproxy.cs
- DecoderBestFitFallback.cs
- PointLightBase.cs
- ParseChildrenAsPropertiesAttribute.cs
- MenuItem.cs
- SecurityDocument.cs
- IPEndPoint.cs
- RegexRunnerFactory.cs
- DataServiceHostFactory.cs
- XmlResolver.cs
- CodeDirectionExpression.cs
- CaseDesigner.xaml.cs
- EntitySqlQueryCacheKey.cs
- KerberosSecurityTokenProvider.cs
- DuplicateContext.cs
- BitmapCache.cs
- XmlAnyElementAttributes.cs
- Material.cs
- CodeDirectiveCollection.cs
- SecureStringHasher.cs
- EntityConnectionStringBuilder.cs
- baseaxisquery.cs
- ReverseInheritProperty.cs
- StrongTypingException.cs
- AssemblyBuilder.cs
- ExtensionsSection.cs
- followingquery.cs
- Bits.cs
- TextRangeProviderWrapper.cs
- PersonalizationProvider.cs
- PageRouteHandler.cs
- FormatSettings.cs
- WorkerRequest.cs