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
- NativeCppClassAttribute.cs
- Style.cs
- BitConverter.cs
- Matrix.cs
- Parser.cs
- UserPersonalizationStateInfo.cs
- CommandBindingCollection.cs
- SafeNativeMethodsCLR.cs
- DataGridViewImageCell.cs
- DefaultSettingsSection.cs
- OrderablePartitioner.cs
- CodeAttachEventStatement.cs
- GridViewDeleteEventArgs.cs
- CopyOnWriteList.cs
- DoubleLinkListEnumerator.cs
- PkcsMisc.cs
- SafeReadContext.cs
- PersonalizationAdministration.cs
- SecurityDocument.cs
- BaseProcessor.cs
- CalendarAutomationPeer.cs
- SizeLimitedCache.cs
- BevelBitmapEffect.cs
- WebPartDisplayModeEventArgs.cs
- HostedNamedPipeTransportManager.cs
- MatrixValueSerializer.cs
- ControlBindingsCollection.cs
- OAVariantLib.cs
- InvokeMethod.cs
- JsonByteArrayDataContract.cs
- XmlSchemaSimpleTypeRestriction.cs
- UdpAnnouncementEndpoint.cs
- DocumentPaginator.cs
- tibetanshape.cs
- ThreadAbortException.cs
- AssemblyFilter.cs
- LayoutEvent.cs
- BufferedWebEventProvider.cs
- DataControlFieldCollection.cs
- DropAnimation.xaml.cs
- CollectionsUtil.cs
- SelectionUIHandler.cs
- RepeaterDesigner.cs
- SubpageParaClient.cs
- XPathBinder.cs
- CharAnimationUsingKeyFrames.cs
- Mouse.cs
- tooltip.cs
- StringDictionary.cs
- DrawToolTipEventArgs.cs
- DrawingContextWalker.cs
- UnrecognizedAssertionsBindingElement.cs
- MethodExpression.cs
- _Win32.cs
- Scheduling.cs
- ToolStripPanel.cs
- Brush.cs
- DivideByZeroException.cs
- CmsInterop.cs
- InternalConfigRoot.cs
- AssemblyNameProxy.cs
- ComboBoxRenderer.cs
- RenderDataDrawingContext.cs
- DatagridviewDisplayedBandsData.cs
- SqlCacheDependencyDatabaseCollection.cs
- ServiceAuthorizationBehavior.cs
- ToolStripItem.cs
- DataGridHelper.cs
- Configuration.cs
- DictionarySectionHandler.cs
- OSFeature.cs
- RuntimeHandles.cs
- CornerRadius.cs
- WorkflowApplication.cs
- SourceCollection.cs
- UserPreferenceChangingEventArgs.cs
- DataGridCaption.cs
- ContractsBCL.cs
- ObjectSet.cs
- DataFieldConverter.cs
- DetailsViewUpdatedEventArgs.cs
- XmlDataProvider.cs
- ArgumentException.cs
- newinstructionaction.cs
- ManagedCodeMarkers.cs
- MimeFormatExtensions.cs
- HttpResponseInternalWrapper.cs
- CompositeClientFormatter.cs
- InstanceNotFoundException.cs
- MethodRental.cs
- XmlAnyElementAttribute.cs
- Point3D.cs
- MsmqIntegrationAppDomainProtocolHandler.cs
- CreateUserWizard.cs
- PointAnimationBase.cs
- Point3DIndependentAnimationStorage.cs
- PathGradientBrush.cs
- ModelUIElement3D.cs
- SafeSystemMetrics.cs
- DtdParser.cs