Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / ReadOnlyDictionary.cs / 1 / ReadOnlyDictionary.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.ServiceModel { using System; using System.Collections; using System.Collections.Generic; using System.Runtime.Serialization; internal sealed class ReadOnlyDictionary: IDictionary { IDictionary dictionary; bool isFixedSize; internal ReadOnlyDictionary(IDictionary dictionary) : this(dictionary, true) { // empty } internal ReadOnlyDictionary(IDictionary dictionary, bool makeCopy) { if (makeCopy) this.dictionary = new Dictionary (dictionary); else this.dictionary = dictionary; this.isFixedSize = makeCopy; } public V this[K key] { get { return this.dictionary[key]; } set { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new InvalidOperationException(SR.GetString(SR.ObjectIsReadOnly))); } } public ICollection Keys { get { return this.dictionary.Keys; } } public ICollection Values { get { return this.dictionary.Values; } } public int Count { get { return this.dictionary.Count; } } public bool ContainsKey(K key) { return this.dictionary.ContainsKey(key); } public void Add(K key, V value) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new InvalidOperationException(SR.GetString(SR.ObjectIsReadOnly))); } public void Clear() { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new InvalidOperationException(SR.GetString(SR.ObjectIsReadOnly))); } public bool IsReadOnly { get { return true; } } public bool IsFixedSize { get { return this.isFixedSize; } } public bool TryGetValue(K key, out V value) { return this.dictionary.TryGetValue(key, out value); } void ICollection >.Add(KeyValuePair keyValuePair) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new InvalidOperationException(SR.GetString(SR.ObjectIsReadOnly))); } bool ICollection >.Contains(KeyValuePair keyValuePair) { return (this.ContainsKey(keyValuePair.Key) && this[keyValuePair.Key].Equals(keyValuePair.Value)); } bool ICollection >.Remove(KeyValuePair keyValuePair) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new InvalidOperationException(SR.GetString(SR.ObjectIsReadOnly))); } public bool Remove(K key) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new InvalidOperationException(SR.GetString(SR.ObjectIsReadOnly))); } void ICollection >.CopyTo(KeyValuePair [] array, int arrayIndex) { ((IDictionary )this.dictionary).CopyTo(array, arrayIndex); } IEnumerator IEnumerable.GetEnumerator() { return ((IEnumerable >)this).GetEnumerator(); } IEnumerator > IEnumerable >.GetEnumerator() { return ((IDictionary )this.dictionary).GetEnumerator(); } } } // 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
- EventHandlersDesigner.cs
- SelectionHighlightInfo.cs
- VectorValueSerializer.cs
- CqlIdentifiers.cs
- RectangleF.cs
- Rule.cs
- OutputCacheModule.cs
- Int64Storage.cs
- UniformGrid.cs
- OpCellTreeNode.cs
- WindowsImpersonationContext.cs
- wgx_exports.cs
- ExtendedPropertyDescriptor.cs
- WrappedReader.cs
- OdbcConnectionHandle.cs
- SerializationEventsCache.cs
- TemplateInstanceAttribute.cs
- IntMinMaxAggregationOperator.cs
- BinaryFormatter.cs
- BindStream.cs
- EntityWrapperFactory.cs
- DesignerExtenders.cs
- Completion.cs
- ReferenceService.cs
- InheritanceAttribute.cs
- IncrementalReadDecoders.cs
- ResourceDefaultValueAttribute.cs
- XmlILOptimizerVisitor.cs
- LogicalTreeHelper.cs
- FixedSOMSemanticBox.cs
- PageEventArgs.cs
- WhitespaceSignificantCollectionAttribute.cs
- PropertiesTab.cs
- dsa.cs
- OleDbParameter.cs
- DataGridViewColumnConverter.cs
- RegexWorker.cs
- followingquery.cs
- DataSourceXmlElementAttribute.cs
- CapiHashAlgorithm.cs
- processwaithandle.cs
- ThreadStartException.cs
- datacache.cs
- VisualTarget.cs
- EDesignUtil.cs
- MatrixConverter.cs
- ResourceManagerWrapper.cs
- ToolStripSeparatorRenderEventArgs.cs
- HelpOperationInvoker.cs
- RIPEMD160Managed.cs
- InternalConfigRoot.cs
- RtfControls.cs
- CodeTypeDeclarationCollection.cs
- MemberRelationshipService.cs
- InstanceLockedException.cs
- SRGSCompiler.cs
- ScriptingProfileServiceSection.cs
- _IPv4Address.cs
- ConstructorBuilder.cs
- WrapperEqualityComparer.cs
- CopyNodeSetAction.cs
- UserPreference.cs
- MenuCommand.cs
- DataGridViewComboBoxEditingControl.cs
- LicenseException.cs
- BasePropertyDescriptor.cs
- ResumeStoryboard.cs
- SqlTypeSystemProvider.cs
- DbException.cs
- PropertyMapper.cs
- SpinWait.cs
- JulianCalendar.cs
- InheritedPropertyChangedEventArgs.cs
- EncoderParameter.cs
- EntityDataSourceSelectingEventArgs.cs
- SMSvcHost.cs
- XmlBoundElement.cs
- SystemKeyConverter.cs
- AudioBase.cs
- AstTree.cs
- PathSegment.cs
- LayoutDump.cs
- SqlTypesSchemaImporter.cs
- ContextStack.cs
- EncodingTable.cs
- Script.cs
- SByteConverter.cs
- TCPListener.cs
- SafeWaitHandle.cs
- EventlogProvider.cs
- DataGridViewComponentPropertyGridSite.cs
- WSTransactionSection.cs
- AttributeTable.cs
- MimeMapping.cs
- KeyTimeConverter.cs
- ValidationSummaryDesigner.cs
- SafeMILHandle.cs
- OdbcConnectionOpen.cs
- MouseBinding.cs
- TrackingLocationCollection.cs