Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / AddIn / AddIn / System / Addin / Hosting / ReadOnlyDictionary.cs / 1305376 / ReadOnlyDictionary.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== /*============================================================ ** ** Class: ReadOnlyDictionary ** A wrapper on a Dictionary that throws if any of the ** write methods or property setters are called. ** ===========================================================*/ using System; using System.Collections.Generic; using System.Diagnostics.Contracts; namespace System.Collections.ObjectModel { [Serializable] internal class ReadOnlyDictionary: IDictionary { private IDictionary m_dictionary; public ReadOnlyDictionary(IDictionary dictionary) { if (dictionary == null) throw new ArgumentNullException("dictionary"); System.Diagnostics.Contracts.Contract.EndContractBlock(); m_dictionary = dictionary; } public void Add(TKey key, TValue value) { throw new NotSupportedException(); } public bool ContainsKey(TKey key) { return m_dictionary.ContainsKey(key); } public bool Remove(TKey key) { throw new NotSupportedException(); } public bool TryGetValue(TKey key, out TValue value) { return m_dictionary.TryGetValue(key, out value); } public TValue this[TKey key] { get { return m_dictionary[key]; } set { throw new NotSupportedException(); } } public ICollection Keys { get { return m_dictionary.Keys; } } public ICollection Values { get { return m_dictionary.Values; } } public void Add(KeyValuePair pair) { throw new NotSupportedException(); } public void Clear() { throw new NotSupportedException(); } public bool Contains(KeyValuePair keyValuePair) { return m_dictionary.Contains(keyValuePair); } public void CopyTo(KeyValuePair [] array, Int32 arrayIndex) { m_dictionary.CopyTo(array, arrayIndex); } public bool Remove(KeyValuePair keyValuePair) { throw new NotSupportedException(); } public IEnumerator > GetEnumerator() { return m_dictionary.GetEnumerator(); } public Int32 Count { get { return m_dictionary.Count; } } public bool IsReadOnly { get { return true; } } IEnumerator System.Collections.IEnumerable.GetEnumerator() { return 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
- XmlBufferReader.cs
- X509Certificate2.cs
- SimpleApplicationHost.cs
- ServicePoint.cs
- SqlDataSourceStatusEventArgs.cs
- CombinedGeometry.cs
- DataGridViewRowsAddedEventArgs.cs
- ReferencedAssembly.cs
- StringBuilder.cs
- WebMessageEncodingBindingElement.cs
- ConfigXmlSignificantWhitespace.cs
- HandleExceptionArgs.cs
- Win32NamedPipes.cs
- ScopeCollection.cs
- Line.cs
- RawStylusInputCustomData.cs
- SchemaHelper.cs
- DispatcherHookEventArgs.cs
- ReadOnlyObservableCollection.cs
- ManifestResourceInfo.cs
- EmptyEnumerator.cs
- TraceUtility.cs
- ListViewGroup.cs
- XslAstAnalyzer.cs
- Delegate.cs
- SystemGatewayIPAddressInformation.cs
- ExpressionNode.cs
- FormViewUpdateEventArgs.cs
- HitTestFilterBehavior.cs
- StructuralCache.cs
- HierarchicalDataSourceControl.cs
- DataGridViewBindingCompleteEventArgs.cs
- LoadedOrUnloadedOperation.cs
- FileFormatException.cs
- RSAPKCS1SignatureDeformatter.cs
- FilteredReadOnlyMetadataCollection.cs
- NamespaceList.cs
- SeekStoryboard.cs
- RenderingBiasValidation.cs
- Boolean.cs
- MimeXmlReflector.cs
- CompressStream.cs
- ToolStripAdornerWindowService.cs
- KeyPressEvent.cs
- UrlMappingsSection.cs
- TreeNodeStyleCollection.cs
- UnsafeNativeMethodsCLR.cs
- COM2EnumConverter.cs
- BadImageFormatException.cs
- PropertyToken.cs
- ConstructorArgumentAttribute.cs
- XmlQueryContext.cs
- NavigationWindowAutomationPeer.cs
- ServiceAppDomainAssociationProvider.cs
- iisPickupDirectory.cs
- DetailsViewActionList.cs
- StrokeSerializer.cs
- RequestTimeoutManager.cs
- Missing.cs
- CompModHelpers.cs
- ToolboxItemFilterAttribute.cs
- SecureStringHasher.cs
- DocumentScope.cs
- SerTrace.cs
- CompositeActivityTypeDescriptor.cs
- IgnoreSection.cs
- LogicalCallContext.cs
- ControlCodeDomSerializer.cs
- DataGridViewRowConverter.cs
- EntityDataSourceUtil.cs
- SqlWebEventProvider.cs
- MemoryRecordBuffer.cs
- ParagraphResult.cs
- RuntimeVariableList.cs
- ViewLoader.cs
- ActivityLocationReferenceEnvironment.cs
- WindowsFormsSynchronizationContext.cs
- DataGridPageChangedEventArgs.cs
- SinglePhaseEnlistment.cs
- IListConverters.cs
- CodeMethodMap.cs
- BridgeDataRecord.cs
- _SecureChannel.cs
- PackagePartCollection.cs
- GridViewUpdateEventArgs.cs
- ReliableChannelListener.cs
- OneToOneMappingSerializer.cs
- EditorPart.cs
- ReflectionTypeLoadException.cs
- WindowPatternIdentifiers.cs
- precedingquery.cs
- PerSessionInstanceContextProvider.cs
- DataKeyCollection.cs
- FieldDescriptor.cs
- TrustManagerMoreInformation.cs
- PagesSection.cs
- Tokenizer.cs
- Brushes.cs
- ValidationRule.cs
- SafeReversePInvokeHandle.cs