Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / Channels / BindingElementCollection.cs / 1 / BindingElementCollection.cs
//------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.ServiceModel.Channels { using System.ServiceModel; using System.ComponentModel; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Runtime.Serialization; public class BindingElementCollection : Collection{ public BindingElementCollection() { } public BindingElementCollection(IEnumerable elements) { if (elements == null) throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("elements"); foreach (BindingElement element in elements) { base.Add(element); } } public BindingElementCollection(BindingElement[] elements) { if (elements == null) throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("elements"); for (int i = 0; i < elements.Length; i++) { base.Add(elements[i]); } } internal BindingElementCollection(BindingElementCollection elements) { if (elements == null) throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("elements"); for (int i = 0; i < elements.Count; i++) { base.Add(elements[i]); } } // returns a new collection with clones of all the elements public BindingElementCollection Clone() { BindingElementCollection result = new BindingElementCollection(); for (int i = 0; i < this.Count; i++) { result.Add(this[i].Clone()); } return result; } public void AddRange(params BindingElement[] elements) { if (elements == null) throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("elements"); for (int i = 0; i < elements.Length; i++) { base.Add(elements[i]); } } public bool Contains(Type bindingElementType) { if (bindingElementType == null) throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("bindingElementType"); for (int i = 0; i < this.Count; i++) { if (bindingElementType.IsInstanceOfType(this[i])) return true; } return false; } public T Find () { return Find (false); } public T Remove () { return Find (true); } T Find (bool remove) { for (int index = 0; index < this.Count; index++) { if (this[index] is T) { T item = (T)(object)this[index]; if (remove) { RemoveAt(index); } return item; } } return default(T); } public Collection FindAll () { return FindAll (false); } public Collection RemoveAll () { return FindAll (true); } Collection FindAll (bool remove) { Collection collection = new Collection (); for (int index = 0; index < this.Count; index++) { if (this[index] is T) { T item = (T)(object)this[index]; if (remove) { RemoveAt(index); // back up the index so we inspect the new item at this location index--; } collection.Add(item); } } return collection; } protected override void InsertItem(int index, BindingElement item) { if (item == null) throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("item"); base.InsertItem(index, item); } protected override void SetItem(int index, BindingElement item) { if (item == null) throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("item"); base.SetItem(index, item); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- NotFiniteNumberException.cs
- DetailsViewPagerRow.cs
- figurelengthconverter.cs
- ServiceRouteHandler.cs
- ReflectionPermission.cs
- CustomValidator.cs
- WrapPanel.cs
- XmlSchemaInclude.cs
- Tablet.cs
- ItemMap.cs
- InputQueue.cs
- BoundField.cs
- TextDecorationCollection.cs
- SettingsBindableAttribute.cs
- EntityContainerEmitter.cs
- Convert.cs
- RepeatButtonAutomationPeer.cs
- TemplateApplicationHelper.cs
- SAPICategories.cs
- BaseUriHelper.cs
- Rect3DValueSerializer.cs
- GraphicsContext.cs
- SQLBytesStorage.cs
- NamedPermissionSet.cs
- HwndSourceKeyboardInputSite.cs
- ToolStripItem.cs
- ElementAction.cs
- ServiceKnownTypeAttribute.cs
- ParentQuery.cs
- Button.cs
- ReadWriteSpinLock.cs
- AxDesigner.cs
- XmlLanguageConverter.cs
- ToolStripScrollButton.cs
- BasicHttpMessageSecurity.cs
- PackWebRequestFactory.cs
- SliderAutomationPeer.cs
- XmlSchemaObjectCollection.cs
- CustomPopupPlacement.cs
- DesignerActionUI.cs
- ResourceSetExpression.cs
- ExceptionRoutedEventArgs.cs
- Publisher.cs
- DefaultValueConverter.cs
- KeyedCollection.cs
- PointValueSerializer.cs
- SqlParameterizer.cs
- XmlSchemaGroup.cs
- EdmFunction.cs
- PropertyCollection.cs
- TypefaceCollection.cs
- WebRequestModulesSection.cs
- InternalsVisibleToAttribute.cs
- FontSourceCollection.cs
- SspiHelper.cs
- XsdCachingReader.cs
- TextSpan.cs
- MimeMapping.cs
- CodeMemberProperty.cs
- XmlSchemaComplexType.cs
- SizeLimitedCache.cs
- ResourceDisplayNameAttribute.cs
- ImportCatalogPart.cs
- SecurityElement.cs
- Stackframe.cs
- CodeParameterDeclarationExpressionCollection.cs
- Vector.cs
- GacUtil.cs
- SoapMessage.cs
- AliasGenerator.cs
- XmlObjectSerializerContext.cs
- Attributes.cs
- GridView.cs
- MergeExecutor.cs
- HandlerBase.cs
- UserMapPath.cs
- TextAutomationPeer.cs
- StylusLogic.cs
- documentsequencetextpointer.cs
- ArrayConverter.cs
- TabPanel.cs
- PersonalizationStateQuery.cs
- LoadGrammarCompletedEventArgs.cs
- webproxy.cs
- AssemblyCollection.cs
- ZoneLinkButton.cs
- DeferredTextReference.cs
- Separator.cs
- ArrangedElementCollection.cs
- PrintDocument.cs
- WindowsTokenRoleProvider.cs
- TemplateField.cs
- TypeDescriptionProviderAttribute.cs
- SelectionProcessor.cs
- TimeStampChecker.cs
- DBCommand.cs
- DataTemplate.cs
- XmlBaseWriter.cs
- ClientBuildManager.cs
- Operand.cs