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
- RuntimeCompatibilityAttribute.cs
- SiteMap.cs
- StreamReader.cs
- XmlDictionaryReaderQuotas.cs
- CollectionViewGroupInternal.cs
- COAUTHIDENTITY.cs
- CachedPathData.cs
- FileInfo.cs
- VoiceObjectToken.cs
- ZipIOBlockManager.cs
- ExtenderControl.cs
- TypeContext.cs
- TextElementEnumerator.cs
- PropertiesTab.cs
- DbParameterCollectionHelper.cs
- followingquery.cs
- CorrelationResolver.cs
- ADConnectionHelper.cs
- EventTrigger.cs
- StrokeFIndices.cs
- UiaCoreProviderApi.cs
- RemoteWebConfigurationHostStream.cs
- ButtonBaseAutomationPeer.cs
- Utils.cs
- Triangle.cs
- FilterQueryOptionExpression.cs
- Viewport3DAutomationPeer.cs
- SecurityStateEncoder.cs
- MenuItemStyle.cs
- BamlRecordWriter.cs
- XmlAnyAttributeAttribute.cs
- ServiceContractListItemList.cs
- HtmlElementCollection.cs
- WebPartUserCapability.cs
- CompilationRelaxations.cs
- TextEditorLists.cs
- IPAddressCollection.cs
- File.cs
- RealProxy.cs
- DataGridDesigner.cs
- SmiXetterAccessMap.cs
- HostingEnvironment.cs
- MethodImplAttribute.cs
- XmlReturnReader.cs
- PropertyMapper.cs
- VisualCollection.cs
- CustomPopupPlacement.cs
- Merger.cs
- TimeoutHelper.cs
- XmlHelper.cs
- Menu.cs
- AsyncContentLoadedEventArgs.cs
- DataControlFieldHeaderCell.cs
- TailCallAnalyzer.cs
- MessageAction.cs
- SafeFileMappingHandle.cs
- SystemKeyConverter.cs
- FileLevelControlBuilderAttribute.cs
- FrameworkObject.cs
- ApplicationManager.cs
- BlurBitmapEffect.cs
- TemplatedEditableDesignerRegion.cs
- PerformanceCounterPermissionEntry.cs
- DataGridParentRows.cs
- LinearKeyFrames.cs
- PointLightBase.cs
- DoubleStorage.cs
- StorageTypeMapping.cs
- CallTemplateAction.cs
- ZipIOFileItemStream.cs
- SignatureHelper.cs
- MatrixKeyFrameCollection.cs
- TypeUnloadedException.cs
- ErrorInfoXmlDocument.cs
- WindowsStartMenu.cs
- UserControl.cs
- ToolboxBitmapAttribute.cs
- TextProperties.cs
- ConfigurationSectionCollection.cs
- PropertyChangedEventArgs.cs
- CounterCreationDataCollection.cs
- Point3DAnimationUsingKeyFrames.cs
- XmlSchemaRedefine.cs
- DesignDataSource.cs
- IntSecurity.cs
- PreviewPageInfo.cs
- FormViewPagerRow.cs
- ValueChangedEventManager.cs
- SuppressMergeCheckAttribute.cs
- ProfilePropertyNameValidator.cs
- Panel.cs
- MaskInputRejectedEventArgs.cs
- AppLevelCompilationSectionCache.cs
- SessionEndingEventArgs.cs
- ToolStripGrip.cs
- InternalDispatchObject.cs
- RadioButtonPopupAdapter.cs
- ServiceDescriptionImporter.cs
- CodeChecksumPragma.cs
- ClientRuntimeConfig.cs