Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WCF / Serialization / System / Runtime / Serialization / KnownTypeDataContractResolver.cs / 1305376 / KnownTypeDataContractResolver.cs
//------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.Runtime.Serialization { using System.Xml; sealed class KnownTypeDataContractResolver : DataContractResolver { XmlObjectSerializerContext context; internal KnownTypeDataContractResolver(XmlObjectSerializerContext context) { Fx.Assert(context != null, "KnownTypeDataContractResolver should not be instantiated with a null context"); this.context = context; } public override bool TryResolveType(Type type, Type declaredType, DataContractResolver knownTypeResolver, out XmlDictionaryString typeName, out XmlDictionaryString typeNamespace) { if (type == null) { typeName = null; typeNamespace = null; return false; } if (declaredType != null && declaredType.IsInterface && CollectionDataContract.IsCollectionInterface(declaredType)) { typeName = null; typeNamespace = null; return true; } DataContract contract = DataContract.GetDataContract(type); if (context.IsKnownType(contract, contract.KnownDataContracts, declaredType)) { typeName = contract.Name; typeNamespace = contract.Namespace; return true; } else { typeName = null; typeNamespace = null; return false; } } public override Type ResolveName(string typeName, string typeNamespace, Type declaredType, DataContractResolver knownTypeResolver) { if (typeName == null || typeNamespace == null) return null; return context.ResolveNameFromKnownTypes(new XmlQualifiedName(typeName, typeNamespace)); } } } // 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
- SessionPageStateSection.cs
- SiteMapHierarchicalDataSourceView.cs
- BuildProviderAppliesToAttribute.cs
- RepeatBehaviorConverter.cs
- CounterSample.cs
- linebase.cs
- OleServicesContext.cs
- TemplateBindingExpressionConverter.cs
- BindingCompleteEventArgs.cs
- XmlNodeReader.cs
- CollectionBase.cs
- SystemIPAddressInformation.cs
- UrlAuthorizationModule.cs
- RuleSettings.cs
- RemotingConfigParser.cs
- ISCIIEncoding.cs
- Point4DConverter.cs
- AttributedMetaModel.cs
- ToolStripInSituService.cs
- DataTableNewRowEvent.cs
- RawStylusInputReport.cs
- CodeFieldReferenceExpression.cs
- WindowsListViewItemCheckBox.cs
- CodeSnippetStatement.cs
- UnionCqlBlock.cs
- ListViewPagedDataSource.cs
- ObjectSecurity.cs
- DataPagerField.cs
- StubHelpers.cs
- COAUTHIDENTITY.cs
- EventLogWatcher.cs
- GridItemCollection.cs
- DocumentSequenceHighlightLayer.cs
- FlowPosition.cs
- Wildcard.cs
- COAUTHIDENTITY.cs
- ParameterToken.cs
- EntityContainer.cs
- SqlCommandBuilder.cs
- DataGridHeadersVisibilityToVisibilityConverter.cs
- X509AsymmetricSecurityKey.cs
- PointConverter.cs
- MetabaseSettings.cs
- Point.cs
- DataServiceConfiguration.cs
- TextUtf8RawTextWriter.cs
- CodeMemberProperty.cs
- HostedBindingBehavior.cs
- SiteMapDataSource.cs
- _IPv4Address.cs
- SqlDataSourceStatusEventArgs.cs
- HttpGetClientProtocol.cs
- ObjectStorage.cs
- TextParagraphCache.cs
- TemplatedAdorner.cs
- CommandLibraryHelper.cs
- NavigationService.cs
- SchemeSettingElement.cs
- EncryptedHeaderXml.cs
- RbTree.cs
- Evidence.cs
- SubMenuStyle.cs
- Color.cs
- MatrixIndependentAnimationStorage.cs
- ConstraintEnumerator.cs
- Stackframe.cs
- ReadOnlyHierarchicalDataSource.cs
- Condition.cs
- SystemWebSectionGroup.cs
- AuthenticationModuleElement.cs
- HttpConfigurationSystem.cs
- BlockUIContainer.cs
- ToolStripItemTextRenderEventArgs.cs
- ToolStripSplitStackLayout.cs
- TypeExtensionConverter.cs
- HttpModuleCollection.cs
- CheckBox.cs
- JsonServiceDocumentSerializer.cs
- WebPartManagerDesigner.cs
- wmiprovider.cs
- XmlSchemaAppInfo.cs
- unsafenativemethodsother.cs
- AddingNewEventArgs.cs
- Stroke2.cs
- PageSettings.cs
- ProxyElement.cs
- UserControlCodeDomTreeGenerator.cs
- ClientTarget.cs
- SmiXetterAccessMap.cs
- MembershipSection.cs
- Transform.cs
- AssemblyBuilder.cs
- TextTrailingWordEllipsis.cs
- TraceRecords.cs
- PagedDataSource.cs
- TaskCanceledException.cs
- ChtmlTextWriter.cs
- WebPartEditorCancelVerb.cs
- XmlLanguageConverter.cs
- DataGridCell.cs