Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx35 / System.WorkflowServices / System / ServiceModel / SerializableReadOnlyDictionary.cs / 1305376 / SerializableReadOnlyDictionary.cs
//------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.ServiceModel { using System.Collections; using System.Collections.Generic; [Serializable] class SerializableReadOnlyDictionary: IDictionary { static IDictionary empty; IDictionary dictionary; public SerializableReadOnlyDictionary(IDictionary dictionary) : this(dictionary, true) { } public SerializableReadOnlyDictionary(IDictionary dictionary, bool makeCopy) { if (makeCopy) { this.dictionary = new Dictionary (dictionary); } else { this.dictionary = dictionary; } } public SerializableReadOnlyDictionary(params KeyValuePair [] entries) { this.dictionary = new Dictionary (entries.Length); foreach (KeyValuePair pair in entries) { this.dictionary.Add(pair); } } public static IDictionary Empty { get { if (empty == null) { empty = new SerializableReadOnlyDictionary (new Dictionary (0), false); } return empty; } } public int Count { get { return this.dictionary.Count; } } public bool IsReadOnly { get { return true; } } public ICollection Keys { get { return this.dictionary.Keys; } } public ICollection Values { get { return this.dictionary.Values; } } public V this[K key] { get { return this.dictionary[key]; } set { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new InvalidOperationException(SR.GetString(SR.ObjectIsReadOnly))); } } public void Add(K key, V value) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new InvalidOperationException(SR.GetString(SR.ObjectIsReadOnly))); } public void Add(KeyValuePair item) { 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 Contains(KeyValuePair item) { return this.dictionary.Contains(item); } public bool ContainsKey(K key) { return this.dictionary.ContainsKey(key); } public void CopyTo(KeyValuePair [] array, int arrayIndex) { this.dictionary.CopyTo(array, arrayIndex); } public IEnumerator > GetEnumerator() { return this.dictionary.GetEnumerator(); } IEnumerator IEnumerable.GetEnumerator() { return this.GetEnumerator(); } public bool Remove(K key) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new InvalidOperationException(SR.GetString(SR.ObjectIsReadOnly))); } public bool Remove(KeyValuePair item) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new InvalidOperationException(SR.GetString(SR.ObjectIsReadOnly))); } public bool TryGetValue(K key, out V value) { return this.dictionary.TryGetValue(key, out value); } } } // 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
- WithStatement.cs
- RtType.cs
- RuleSetDialog.cs
- UserUseLicenseDictionaryLoader.cs
- ExceptionWrapper.cs
- WebPartZoneCollection.cs
- ContractAdapter.cs
- DbDeleteCommandTree.cs
- RijndaelManaged.cs
- ParserStreamGeometryContext.cs
- KeyFrames.cs
- WpfMemberInvoker.cs
- PeerInputChannelListener.cs
- ExpressionVisitor.cs
- RowToFieldTransformer.cs
- LocalServiceSecuritySettings.cs
- UnsafeNativeMethods.cs
- CodeNamespaceImportCollection.cs
- BamlTreeUpdater.cs
- HtmlTitle.cs
- RequestCachePolicyConverter.cs
- SqlReferenceCollection.cs
- EncryptRequest.cs
- PolyLineSegment.cs
- PropertyInfoSet.cs
- Timeline.cs
- Quad.cs
- SqlNotificationEventArgs.cs
- OracleParameterCollection.cs
- EventPrivateKey.cs
- EntityContainer.cs
- TextSelection.cs
- MediaElementAutomationPeer.cs
- NumericUpDownAccelerationCollection.cs
- WinInet.cs
- TreeNodeCollectionEditor.cs
- ExpandedWrapper.cs
- ToolStripDropDownButton.cs
- ClaimTypeElement.cs
- UnsafeNativeMethods.cs
- ToolStripContainer.cs
- CollectionContainer.cs
- CodePageEncoding.cs
- CompilationRelaxations.cs
- BitmapPalette.cs
- DocumentXPathNavigator.cs
- BooleanFacetDescriptionElement.cs
- PageVisual.cs
- TabItemWrapperAutomationPeer.cs
- DataStreamFromComStream.cs
- MsmqIntegrationProcessProtocolHandler.cs
- SqlUdtInfo.cs
- RequestResponse.cs
- MimeMultiPart.cs
- ItemCheckedEvent.cs
- ListCollectionView.cs
- WindowsTooltip.cs
- StreamingContext.cs
- WebPartDisplayModeCancelEventArgs.cs
- IdleTimeoutMonitor.cs
- LayoutInformation.cs
- ClockGroup.cs
- WindowHideOrCloseTracker.cs
- PublishLicense.cs
- AdapterUtil.cs
- EntitySqlQueryCacheKey.cs
- UnsafeNativeMethods.cs
- StsCommunicationException.cs
- WebServiceMethodData.cs
- StoreAnnotationsMap.cs
- PerspectiveCamera.cs
- HtmlInputText.cs
- ArgumentException.cs
- CheckedPointers.cs
- keycontainerpermission.cs
- TextBreakpoint.cs
- RestHandler.cs
- XmlNullResolver.cs
- WebHttpDispatchOperationSelector.cs
- CodeIdentifier.cs
- IndexingContentUnit.cs
- QilFunction.cs
- _ConnectionGroup.cs
- filewebrequest.cs
- ColumnHeader.cs
- SmtpFailedRecipientException.cs
- WebPartDisplayMode.cs
- Globals.cs
- JsonQueryStringConverter.cs
- SeverityFilter.cs
- SqlExpressionNullability.cs
- BitmapPalette.cs
- Tracking.cs
- RsaSecurityTokenParameters.cs
- BaseCodePageEncoding.cs
- DataBoundLiteralControl.cs
- MailWebEventProvider.cs
- RawStylusInputReport.cs
- SchemaDeclBase.cs
- CommandLineParser.cs