Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WCF / Serialization / System / Runtime / Serialization / ScopedKnownTypes.cs / 1305376 / ScopedKnownTypes.cs
//------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.Runtime.Serialization { using System; using System.Xml; using DataContractDictionary=System.Collections.Generic.Dictionary; struct ScopedKnownTypes { internal DataContractDictionary[] dataContractDictionaries; int count; internal void Push(DataContractDictionary dataContractDictionary) { if (dataContractDictionaries == null) dataContractDictionaries = new DataContractDictionary[4]; else if (count == dataContractDictionaries.Length) Array.Resize (ref dataContractDictionaries, dataContractDictionaries.Length*2); dataContractDictionaries[count++] = dataContractDictionary; } internal void Pop() { count--; } internal DataContract GetDataContract(XmlQualifiedName qname) { for (int i=(count-1);i>=0;i--) { DataContractDictionary dataContractDictionary = dataContractDictionaries[i]; DataContract dataContract; if (dataContractDictionary.TryGetValue(qname, out dataContract)) return dataContract; } return null; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.Runtime.Serialization { using System; using System.Xml; using DataContractDictionary=System.Collections.Generic.Dictionary ; struct ScopedKnownTypes { internal DataContractDictionary[] dataContractDictionaries; int count; internal void Push(DataContractDictionary dataContractDictionary) { if (dataContractDictionaries == null) dataContractDictionaries = new DataContractDictionary[4]; else if (count == dataContractDictionaries.Length) Array.Resize (ref dataContractDictionaries, dataContractDictionaries.Length*2); dataContractDictionaries[count++] = dataContractDictionary; } internal void Pop() { count--; } internal DataContract GetDataContract(XmlQualifiedName qname) { for (int i=(count-1);i>=0;i--) { DataContractDictionary dataContractDictionary = dataContractDictionaries[i]; DataContract dataContract; if (dataContractDictionary.TryGetValue(qname, out dataContract)) return dataContract; } return null; } } } // 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
- ForwardPositionQuery.cs
- ExtendedProtectionPolicy.cs
- RTLAwareMessageBox.cs
- StopStoryboard.cs
- DataAdapter.cs
- DesignerCategoryAttribute.cs
- SizeAnimationClockResource.cs
- SerialStream.cs
- ContainerParaClient.cs
- LingerOption.cs
- StrokeCollectionDefaultValueFactory.cs
- RegexCode.cs
- ConnectionConsumerAttribute.cs
- Certificate.cs
- TypeInitializationException.cs
- KeyNotFoundException.cs
- VBCodeProvider.cs
- BoundPropertyEntry.cs
- Helpers.cs
- AliasExpr.cs
- DoubleKeyFrameCollection.cs
- XmlHierarchyData.cs
- RegionData.cs
- MarshalDirectiveException.cs
- StrokeNode.cs
- CacheRequest.cs
- SettingsPropertyCollection.cs
- CommandValueSerializer.cs
- RadioButtonFlatAdapter.cs
- CodeIterationStatement.cs
- ExpressionEditorAttribute.cs
- SafeHandles.cs
- ResourceExpression.cs
- XmlDataLoader.cs
- TiffBitmapEncoder.cs
- ToolStripItemEventArgs.cs
- CompModHelpers.cs
- TimeoutException.cs
- TabPanel.cs
- SqlDataSourceSummaryPanel.cs
- ImpersonateTokenRef.cs
- DataRowCollection.cs
- ToolStripMenuItemDesigner.cs
- EditorZoneAutoFormat.cs
- TreeIterator.cs
- MarkupExtensionSerializer.cs
- WsatServiceCertificate.cs
- InputBindingCollection.cs
- SerializationSectionGroup.cs
- DiffuseMaterial.cs
- UInt32Converter.cs
- MailDefinition.cs
- ThrowHelper.cs
- CLRBindingWorker.cs
- HostingPreferredMapPath.cs
- AttributeTable.cs
- AspNetHostingPermission.cs
- SQLInt16Storage.cs
- CodeTypeMemberCollection.cs
- ArraySubsetEnumerator.cs
- WmlControlAdapter.cs
- RegexGroupCollection.cs
- HtmlTableCell.cs
- DateTime.cs
- BooleanConverter.cs
- SQLBinaryStorage.cs
- TimeManager.cs
- Matrix3D.cs
- IncrementalHitTester.cs
- RightsManagementEncryptionTransform.cs
- OdbcTransaction.cs
- WebPartConnectionsCancelEventArgs.cs
- MenuItemStyleCollectionEditor.cs
- MatrixStack.cs
- PolyBezierSegment.cs
- KeyValuePairs.cs
- Component.cs
- EventRoute.cs
- SqlBinder.cs
- SmtpReplyReader.cs
- FontInfo.cs
- Win32NamedPipes.cs
- MissingMethodException.cs
- StandardMenuStripVerb.cs
- RegexTree.cs
- Stream.cs
- DataServiceContext.cs
- EditorZone.cs
- TypedTableBaseExtensions.cs
- LinqDataSourceDeleteEventArgs.cs
- ExceptionUtility.cs
- KeyToListMap.cs
- LocalizationComments.cs
- ModuleBuilderData.cs
- UpDownEvent.cs
- HwndTarget.cs
- XPathEmptyIterator.cs
- SwitchElementsCollection.cs
- Dispatcher.cs
- coordinatorfactory.cs