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
- XPathChildIterator.cs
- HiddenField.cs
- TypefaceMap.cs
- Error.cs
- BasicHttpBindingCollectionElement.cs
- PenLineCapValidation.cs
- RealProxy.cs
- ThreadStartException.cs
- Pair.cs
- FontSizeConverter.cs
- PlaceHolder.cs
- ISAPIRuntime.cs
- _ListenerAsyncResult.cs
- XmlMembersMapping.cs
- ElementFactory.cs
- FrameworkTemplate.cs
- XsdValidatingReader.cs
- GridViewDeletedEventArgs.cs
- Polyline.cs
- StreamMarshaler.cs
- TextContainer.cs
- SHA384CryptoServiceProvider.cs
- GetWinFXPath.cs
- DataShape.cs
- SetStoryboardSpeedRatio.cs
- LineVisual.cs
- WindowsContainer.cs
- PropertyOverridesDialog.cs
- DateTimeSerializationSection.cs
- WebBrowserDocumentCompletedEventHandler.cs
- TagPrefixInfo.cs
- ExpandedWrapper.cs
- StubHelpers.cs
- WmfPlaceableFileHeader.cs
- PageThemeBuildProvider.cs
- CodeAttachEventStatement.cs
- KeyValueSerializer.cs
- ImageMap.cs
- _RequestCacheProtocol.cs
- MailMessageEventArgs.cs
- WriterOutput.cs
- CachedTypeface.cs
- ProxyWebPartConnectionCollection.cs
- SourceChangedEventArgs.cs
- ProxyManager.cs
- MatrixIndependentAnimationStorage.cs
- ControlEvent.cs
- CounterCreationDataCollection.cs
- MsmqMessage.cs
- PopOutPanel.cs
- RecognizedPhrase.cs
- TableLayoutRowStyleCollection.cs
- SchemaElementDecl.cs
- HighContrastHelper.cs
- DataGridItemEventArgs.cs
- _ContextAwareResult.cs
- TextEffectCollection.cs
- SiteIdentityPermission.cs
- CompiledIdentityConstraint.cs
- EntityContainerEmitter.cs
- TextBoxBase.cs
- XsdDateTime.cs
- SafeHandles.cs
- StatementContext.cs
- TextSpan.cs
- System.Data.OracleClient_BID.cs
- WebDescriptionAttribute.cs
- InitiatorSessionSymmetricMessageSecurityProtocol.cs
- QueryCacheManager.cs
- TypedReference.cs
- RoutedEventArgs.cs
- Utils.cs
- ComAdminInterfaces.cs
- HtmlTableCell.cs
- KeysConverter.cs
- TimeStampChecker.cs
- MethodImplAttribute.cs
- ListViewItemMouseHoverEvent.cs
- ToolStripItemDataObject.cs
- AuthenticationSection.cs
- CodeNamespaceImport.cs
- SortDescription.cs
- SmiEventSink_DeferedProcessing.cs
- UnknownBitmapEncoder.cs
- ClonableStack.cs
- CompoundFileStorageReference.cs
- ThicknessAnimationUsingKeyFrames.cs
- CurrentChangedEventManager.cs
- AncestorChangedEventArgs.cs
- StorageScalarPropertyMapping.cs
- Globals.cs
- InstanceKey.cs
- DataTable.cs
- ParameterElementCollection.cs
- BitmapEffectDrawing.cs
- NavigationWindowAutomationPeer.cs
- CheckBoxDesigner.cs
- UpdateCommand.cs
- AdjustableArrowCap.cs
- DataGridViewRowCancelEventArgs.cs