Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / Configuration / ReliableMessagingVersionConverter.cs / 1 / ReliableMessagingVersionConverter.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.ServiceModel.Configuration { //using System; using System.ComponentModel; using System.ComponentModel.Design.Serialization; using System.Globalization; class ReliableMessagingVersionConverter : TypeConverter { public override bool CanConvertFrom(ITypeDescriptorContext context, Type sourceType) { if (typeof(string) == sourceType) { return true; } return base.CanConvertFrom(context, sourceType); } public override bool CanConvertTo(ITypeDescriptorContext context, Type destinationType) { if (typeof(InstanceDescriptor) == destinationType) { return true; } return base.CanConvertTo(context, destinationType); } public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object value) { string version = value as string; #pragma warning suppress 56507 // [....], Really checking for null (meaning value was not a string) versus String.Empty if (version != null) { switch (version) { case ConfigurationStrings.Default: return ReliableMessagingVersion.Default; case ConfigurationStrings.WSReliableMessaging11: return ReliableMessagingVersion.WSReliableMessaging11; case ConfigurationStrings.WSReliableMessagingFebruary2005: return ReliableMessagingVersion.WSReliableMessagingFebruary2005; default: throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgument(SR.GetString(SR.ConfigInvalidReliableMessagingVersionValue, version)); } } return base.ConvertFrom(context, culture, value); } public override object ConvertTo(ITypeDescriptorContext context, CultureInfo culture, object value, Type destinationType) { if (typeof(string) == destinationType && value is ReliableMessagingVersion) { ReliableMessagingVersion version = (ReliableMessagingVersion)value; if (version == ReliableMessagingVersion.Default) { return ConfigurationStrings.Default; } else if (version == ReliableMessagingVersion.WSReliableMessaging11) { return ConfigurationStrings.WSReliableMessaging11; } else if (version == ReliableMessagingVersion.WSReliableMessagingFebruary2005) { return ConfigurationStrings.WSReliableMessagingFebruary2005; } else { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ArgumentOutOfRangeException("value", SR.GetString(SR.ConfigInvalidClassInstanceValue, typeof(ReliableMessagingVersion).FullName))); } } return base.ConvertTo(context, culture, value, destinationType); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- CrossContextChannel.cs
- XmlSignificantWhitespace.cs
- SpecularMaterial.cs
- TargetException.cs
- EventPropertyMap.cs
- SymmetricKey.cs
- ListControl.cs
- HttpCachePolicyBase.cs
- PropertyDescriptorGridEntry.cs
- ConfigXmlElement.cs
- TypeUtils.cs
- CodeTypeDelegate.cs
- PlanCompiler.cs
- ValueExpressions.cs
- DateTimePicker.cs
- ListItemParagraph.cs
- CultureInfo.cs
- EncodingTable.cs
- HwndTarget.cs
- RegularExpressionValidator.cs
- GeneralEndpointIdentity.cs
- StylusButtonEventArgs.cs
- ProxyWebPartConnectionCollection.cs
- SuppressMergeCheckAttribute.cs
- CryptoConfig.cs
- CrossAppDomainChannel.cs
- Aes.cs
- EntityDescriptor.cs
- ObjectDataSourceStatusEventArgs.cs
- FusionWrap.cs
- ServiceMoniker.cs
- SystemIcons.cs
- PlainXmlSerializer.cs
- CompilerWrapper.cs
- CancellationHandler.cs
- _NegoStream.cs
- FixUpCollection.cs
- WeakReferenceList.cs
- BinaryObjectInfo.cs
- ParsedAttributeCollection.cs
- FirstMatchCodeGroup.cs
- ObsoleteAttribute.cs
- Calendar.cs
- _OSSOCK.cs
- GestureRecognitionResult.cs
- StickyNoteAnnotations.cs
- UniqueID.cs
- Lasso.cs
- UIServiceHelper.cs
- TableItemProviderWrapper.cs
- UIElementParagraph.cs
- DocumentsTrace.cs
- newitemfactory.cs
- documentsequencetextview.cs
- StringFunctions.cs
- FixedSOMLineRanges.cs
- CompositeFontFamily.cs
- BindingNavigator.cs
- ImageCodecInfoPrivate.cs
- StrongNamePublicKeyBlob.cs
- ConvertEvent.cs
- OLEDB_Enum.cs
- LicenseManager.cs
- MemoryPressure.cs
- RuntimeHelpers.cs
- MULTI_QI.cs
- OleCmdHelper.cs
- Array.cs
- BaseCodeDomTreeGenerator.cs
- TablePattern.cs
- ServiceOperationInvoker.cs
- CustomAttribute.cs
- ImageDrawing.cs
- RegexGroup.cs
- MergeLocalizationDirectives.cs
- ObjectNotFoundException.cs
- XmlRawWriter.cs
- EventLogger.cs
- ResourceDescriptionAttribute.cs
- VirtualDirectoryMappingCollection.cs
- WebPartDisplayModeCollection.cs
- DateTimeValueSerializerContext.cs
- LogManagementAsyncResult.cs
- WebPartHelpVerb.cs
- PolyBezierSegmentFigureLogic.cs
- ObjectConverter.cs
- ReadContentAsBinaryHelper.cs
- ClientSettingsSection.cs
- CngKey.cs
- ListViewGroupItemCollection.cs
- PreservationFileReader.cs
- WebPartConnectVerb.cs
- ActivityBindForm.Designer.cs
- MessageQueuePermissionEntry.cs
- SessionEndingEventArgs.cs
- UIElementPropertyUndoUnit.cs
- SymLanguageType.cs
- CodeTypeReference.cs
- DateTimeUtil.cs
- PathStreamGeometryContext.cs