Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / Configuration / MessageSecurityVersionConverter.cs / 1 / MessageSecurityVersionConverter.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.ServiceModel.Configuration { using System; using System.ServiceModel.Channels; using System.ComponentModel; using System.ComponentModel.Design.Serialization; using System.Globalization; using System.ServiceModel.Security; class MessageSecurityVersionConverter : 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, System.Globalization.CultureInfo culture, object value) { if (value is string) { string version = (string)value; MessageSecurityVersion retval = null; switch (version) { case ConfigurationStrings.WSSecurity11WSTrustFebruary2005WSSecureConversationFebruary2005WSSecurityPolicy11: retval = MessageSecurityVersion.WSSecurity11WSTrustFebruary2005WSSecureConversationFebruary2005WSSecurityPolicy11; break; case ConfigurationStrings.WSSecurity10WSTrustFebruary2005WSSecureConversationFebruary2005WSSecurityPolicy11BasicSecurityProfile10: retval = MessageSecurityVersion.WSSecurity10WSTrustFebruary2005WSSecureConversationFebruary2005WSSecurityPolicy11BasicSecurityProfile10; break; case ConfigurationStrings.WSSecurity11WSTrustFebruary2005WSSecureConversationFebruary2005WSSecurityPolicy11BasicSecurityProfile10: retval = MessageSecurityVersion.WSSecurity11WSTrustFebruary2005WSSecureConversationFebruary2005WSSecurityPolicy11BasicSecurityProfile10; break; case ConfigurationStrings.WSSecurity10WSTrust13WSSecureConversation13WSSecurityPolicy12BasicSecurityProfile10: retval = MessageSecurityVersion.WSSecurity10WSTrust13WSSecureConversation13WSSecurityPolicy12BasicSecurityProfile10; break; case ConfigurationStrings.WSSecurity11WSTrust13WSSecureConversation13WSSecurityPolicy12: retval = MessageSecurityVersion.WSSecurity11WSTrust13WSSecureConversation13WSSecurityPolicy12; break; case ConfigurationStrings.WSSecurity11WSTrust13WSSecureConversation13WSSecurityPolicy12BasicSecurityProfile10: retval = MessageSecurityVersion.WSSecurity11WSTrust13WSSecureConversation13WSSecurityPolicy12BasicSecurityProfile10; break; case ConfigurationStrings.Default: retval = MessageSecurityVersion.Default; break; default: throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ArgumentOutOfRangeException("value", SR.GetString(SR.ConfigInvalidClassFactoryValue, version, typeof(MessageSecurityVersion).FullName))); } return retval; } return base.ConvertFrom(context, culture, value); } public override object ConvertTo(ITypeDescriptorContext context, System.Globalization.CultureInfo culture, object value, Type destinationType) { if (typeof(string) == destinationType && value is MessageSecurityVersion) { string retval = null; MessageSecurityVersion securityVersion = (MessageSecurityVersion)value; if (securityVersion == MessageSecurityVersion.Default) { retval = ConfigurationStrings.Default; } else if (securityVersion == MessageSecurityVersion.WSSecurity11WSTrustFebruary2005WSSecureConversationFebruary2005WSSecurityPolicy11) { retval = ConfigurationStrings.WSSecurity11WSTrustFebruary2005WSSecureConversationFebruary2005WSSecurityPolicy11; } else if (securityVersion == MessageSecurityVersion.WSSecurity10WSTrustFebruary2005WSSecureConversationFebruary2005WSSecurityPolicy11BasicSecurityProfile10) { retval = ConfigurationStrings.WSSecurity10WSTrustFebruary2005WSSecureConversationFebruary2005WSSecurityPolicy11BasicSecurityProfile10; } else if (securityVersion == MessageSecurityVersion.WSSecurity11WSTrustFebruary2005WSSecureConversationFebruary2005WSSecurityPolicy11BasicSecurityProfile10) { retval = ConfigurationStrings.WSSecurity11WSTrustFebruary2005WSSecureConversationFebruary2005WSSecurityPolicy11BasicSecurityProfile10; } else if (securityVersion == MessageSecurityVersion.WSSecurity10WSTrust13WSSecureConversation13WSSecurityPolicy12BasicSecurityProfile10) { retval = ConfigurationStrings.WSSecurity10WSTrust13WSSecureConversation13WSSecurityPolicy12BasicSecurityProfile10; } else if (securityVersion == MessageSecurityVersion.WSSecurity11WSTrust13WSSecureConversation13WSSecurityPolicy12) { retval = ConfigurationStrings.WSSecurity11WSTrust13WSSecureConversation13WSSecurityPolicy12; } else if (securityVersion == MessageSecurityVersion.WSSecurity11WSTrust13WSSecureConversation13WSSecurityPolicy12BasicSecurityProfile10) { retval = ConfigurationStrings.WSSecurity11WSTrust13WSSecureConversation13WSSecurityPolicy12BasicSecurityProfile10; } else { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ArgumentOutOfRangeException("value", SR.GetString(SR.ConfigInvalidClassInstanceValue, typeof(MessageSecurityVersion).FullName))); } return retval; } 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
- PagerSettings.cs
- SqlTriggerContext.cs
- SHA256.cs
- LinqDataSourceContextEventArgs.cs
- WebPartRestoreVerb.cs
- SchemaCollectionPreprocessor.cs
- HttpGetServerProtocol.cs
- AutomationTextAttribute.cs
- GenericPrincipal.cs
- CodeVariableReferenceExpression.cs
- EventDescriptor.cs
- SqlConnectionHelper.cs
- StoreConnection.cs
- DecodeHelper.cs
- InputLanguageCollection.cs
- RubberbandSelector.cs
- TimeSpanOrInfiniteConverter.cs
- ManipulationStartingEventArgs.cs
- XmlNavigatorStack.cs
- SymLanguageType.cs
- TextEditorMouse.cs
- DoubleLinkListEnumerator.cs
- TabPage.cs
- XmlKeywords.cs
- PackWebRequest.cs
- TraceContextRecord.cs
- WindowsRichEdit.cs
- MobileSysDescriptionAttribute.cs
- SqlUtils.cs
- SqlDataSource.cs
- SHA256Managed.cs
- SortQuery.cs
- HideDisabledControlAdapter.cs
- ConnectionManagementElement.cs
- PageCodeDomTreeGenerator.cs
- StylusSystemGestureEventArgs.cs
- DataObject.cs
- SvcMapFile.cs
- DesignerEventService.cs
- ConnectionPointConverter.cs
- FontUnit.cs
- HttpCookieCollection.cs
- CopyOfAction.cs
- Vector3DAnimation.cs
- TransactionTraceIdentifier.cs
- ToolStripSplitButton.cs
- __Filters.cs
- SQLConvert.cs
- SQLMoneyStorage.cs
- METAHEADER.cs
- SqlSelectClauseBuilder.cs
- ModuleBuilder.cs
- ItemCollectionEditor.cs
- Sequence.cs
- InvariantComparer.cs
- Rect3DConverter.cs
- SizeAnimationUsingKeyFrames.cs
- SingleKeyFrameCollection.cs
- documentsequencetextcontainer.cs
- TableLayoutStyleCollection.cs
- TogglePattern.cs
- TypeElementCollection.cs
- RowUpdatedEventArgs.cs
- ScriptBehaviorDescriptor.cs
- FileDialog.cs
- ZipIORawDataFileBlock.cs
- BufferedGraphicsManager.cs
- ipaddressinformationcollection.cs
- FunctionDescription.cs
- ShapeTypeface.cs
- ListViewHitTestInfo.cs
- PrivateFontCollection.cs
- TypeInitializationException.cs
- AttachedPropertyMethodSelector.cs
- SurrogateSelector.cs
- TextProperties.cs
- BeginEvent.cs
- ConfigXmlAttribute.cs
- RequestDescription.cs
- BamlBinaryWriter.cs
- XamlTemplateSerializer.cs
- LayoutEvent.cs
- CompareValidator.cs
- TileBrush.cs
- XmlSignatureProperties.cs
- loginstatus.cs
- QilScopedVisitor.cs
- TypeSource.cs
- TextSelectionHighlightLayer.cs
- XmlSecureResolver.cs
- ControlTemplate.cs
- SqlInternalConnection.cs
- MembershipValidatePasswordEventArgs.cs
- thaishape.cs
- EntityDataSourceWrapperPropertyDescriptor.cs
- BufferModesCollection.cs
- AddInToken.cs
- MediaTimeline.cs
- PageThemeParser.cs
- UnsafeNativeMethods.cs