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
- WebPartUtil.cs
- Array.cs
- ClientSession.cs
- RoutedUICommand.cs
- QueryCacheKey.cs
- Brush.cs
- FieldDescriptor.cs
- HierarchicalDataSourceControl.cs
- GeometryDrawing.cs
- TextBoxBase.cs
- ObjectIDGenerator.cs
- XmlQueryRuntime.cs
- BinaryMessageEncodingElement.cs
- ValidationRuleCollection.cs
- ClientRoleProvider.cs
- HWStack.cs
- LinqDataSourceSelectEventArgs.cs
- UserControlParser.cs
- ScrollContentPresenter.cs
- DataBinding.cs
- login.cs
- Rijndael.cs
- DebugInfoExpression.cs
- IndentedWriter.cs
- Button.cs
- AppModelKnownContentFactory.cs
- FrugalMap.cs
- XmlConverter.cs
- SchemaCollectionPreprocessor.cs
- WorkflowPageSetupDialog.cs
- CombinedHttpChannel.cs
- CharacterShapingProperties.cs
- PerspectiveCamera.cs
- TextSimpleMarkerProperties.cs
- TrustSection.cs
- ToolStripDropDownButton.cs
- RemoteWebConfigurationHost.cs
- DesignTimeXamlWriter.cs
- RequestCachePolicyConverter.cs
- ProfileManager.cs
- PKCS1MaskGenerationMethod.cs
- CollectionType.cs
- graph.cs
- WaveHeader.cs
- DocumentGrid.cs
- httpapplicationstate.cs
- ArgumentNullException.cs
- FatalException.cs
- DisplayMemberTemplateSelector.cs
- ObsoleteAttribute.cs
- TreeNodeCollection.cs
- CapabilitiesAssignment.cs
- DateTimeUtil.cs
- Thickness.cs
- LogReserveAndAppendState.cs
- DataGridViewColumnHeaderCell.cs
- SecurityManager.cs
- PerformanceCounterScope.cs
- ThousandthOfEmRealPoints.cs
- SchemaImporterExtension.cs
- ThumbAutomationPeer.cs
- SqlTrackingQuery.cs
- AcceptorSessionSymmetricTransportSecurityProtocol.cs
- CheckBoxFlatAdapter.cs
- TokenizerHelper.cs
- WmlImageAdapter.cs
- SplineQuaternionKeyFrame.cs
- TreeNodeStyleCollection.cs
- LayoutEditorPart.cs
- SqlNotificationRequest.cs
- MessageQueueException.cs
- AutomationPeer.cs
- DataControlLinkButton.cs
- WebPartConnectionsCancelEventArgs.cs
- ReferentialConstraint.cs
- DateTimeParse.cs
- PackageDigitalSignatureManager.cs
- LicenseContext.cs
- ConfigurationManager.cs
- TreeNode.cs
- CalendarDay.cs
- ScriptingWebServicesSectionGroup.cs
- KoreanCalendar.cs
- AllMembershipCondition.cs
- PatternMatcher.cs
- AncillaryOps.cs
- EventSetter.cs
- DataGridViewCell.cs
- QilXmlReader.cs
- DocumentGridPage.cs
- NamespaceTable.cs
- EditorZone.cs
- ObjectDataSourceEventArgs.cs
- TextEndOfLine.cs
- ToolboxItemCollection.cs
- XmlUtilWriter.cs
- ColorTranslator.cs
- ResourceDictionaryCollection.cs
- GPRECTF.cs
- ContentPropertyAttribute.cs