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
- VerificationException.cs
- bidPrivateBase.cs
- DataGridCellsPanel.cs
- DiagnosticsConfiguration.cs
- PersonalizationProvider.cs
- HtmlSelect.cs
- IconConverter.cs
- ClientBuildManager.cs
- SchemaImporterExtensionsSection.cs
- BackgroundWorker.cs
- ConfigXmlSignificantWhitespace.cs
- smtppermission.cs
- FormsAuthentication.cs
- Model3D.cs
- NewItemsContextMenuStrip.cs
- dsa.cs
- XMLSyntaxException.cs
- UTF32Encoding.cs
- IndentTextWriter.cs
- RemotingAttributes.cs
- xmlformatgeneratorstatics.cs
- DataGridViewDataErrorEventArgs.cs
- ClientFormsIdentity.cs
- RangeValidator.cs
- WebPartConnectionsDisconnectVerb.cs
- GenericsInstances.cs
- TreeView.cs
- ProcessHostConfigUtils.cs
- ControlValuePropertyAttribute.cs
- SettingsBase.cs
- LocalizationCodeDomSerializer.cs
- BuildProvidersCompiler.cs
- InputMethodStateChangeEventArgs.cs
- DecimalSumAggregationOperator.cs
- DataFormats.cs
- SeverityFilter.cs
- PropertyPathWorker.cs
- XslTransform.cs
- MethodRental.cs
- ArraySubsetEnumerator.cs
- TextTreeTextNode.cs
- EntityModelSchemaGenerator.cs
- ColorConvertedBitmapExtension.cs
- UserCancellationException.cs
- HostedImpersonationContext.cs
- MarkupObject.cs
- UIElementParagraph.cs
- AttributeUsageAttribute.cs
- RoleGroup.cs
- SqlCommandSet.cs
- MetadataPropertyCollection.cs
- recordstatescratchpad.cs
- AuthenticationSection.cs
- ZipIOLocalFileDataDescriptor.cs
- GridViewItemAutomationPeer.cs
- HMACSHA1.cs
- Blend.cs
- InertiaTranslationBehavior.cs
- EncoderExceptionFallback.cs
- MailMessage.cs
- CryptographicAttribute.cs
- FixedSOMGroup.cs
- DataControlPagerLinkButton.cs
- QilUnary.cs
- FileUtil.cs
- DesignerRegionMouseEventArgs.cs
- XXXOnTypeBuilderInstantiation.cs
- NavigationEventArgs.cs
- Registry.cs
- HttpRequestCacheValidator.cs
- ConfigurationManagerInternal.cs
- ObservableCollection.cs
- ListDependantCardsRequest.cs
- SimpleRecyclingCache.cs
- WindowsListViewScroll.cs
- URLIdentityPermission.cs
- DynamicMethod.cs
- DataServiceQueryException.cs
- CompilerCollection.cs
- GridViewUpdatedEventArgs.cs
- ControlValuePropertyAttribute.cs
- OrthographicCamera.cs
- SessionState.cs
- SqlSelectStatement.cs
- InternalSendMessage.cs
- DynamicValidatorEventArgs.cs
- TextDecorations.cs
- PeerApplicationLaunchInfo.cs
- odbcmetadatafactory.cs
- DescendentsWalker.cs
- StyleXamlParser.cs
- Control.cs
- LinearKeyFrames.cs
- MouseButtonEventArgs.cs
- UIInitializationException.cs
- Literal.cs
- WindowsListViewItemStartMenu.cs
- CompositeActivityMarkupSerializer.cs
- ExpressionConverter.cs
- BrowserTree.cs