Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / Configuration / PolicyVersionConverter.cs / 1 / PolicyVersionConverter.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.ServiceModel.Configuration { using System; using System.ServiceModel.Description; using System.ComponentModel; using System.ComponentModel.Design.Serialization; using System.ServiceModel; using System.Globalization; class PolicyVersionConverter : 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 policyVersion = (string)value; PolicyVersion retval = null; switch (policyVersion) { case ConfigurationStrings.Policy12: retval = PolicyVersion.Policy12; break; case ConfigurationStrings.Policy15: retval = PolicyVersion.Policy15; break; case ConfigurationStrings.Default: retval = PolicyVersion.Default; break; default: throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ArgumentOutOfRangeException("value", SR.GetString(SR.ConfigInvalidClassFactoryValue, policyVersion, typeof(PolicyVersion).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 PolicyVersion) { string retval = null; PolicyVersion policyVersion = (PolicyVersion)value; if (policyVersion == PolicyVersion.Default) { retval = ConfigurationStrings.Default; } else if (policyVersion == PolicyVersion.Policy12) { retval = ConfigurationStrings.Policy12; } else if (policyVersion == PolicyVersion.Policy15) { retval = ConfigurationStrings.Policy15; } else { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ArgumentOutOfRangeException("value", SR.GetString(SR.ConfigInvalidClassInstanceValue, typeof(PolicyVersion).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
- DateRangeEvent.cs
- COMException.cs
- DataFieldCollectionEditor.cs
- DesignerActionUI.cs
- AbstractDataSvcMapFileLoader.cs
- StructuredTypeEmitter.cs
- PanelStyle.cs
- BaseTemplateCodeDomTreeGenerator.cs
- Grid.cs
- DocComment.cs
- SqlTransaction.cs
- WindowsFormsHostAutomationPeer.cs
- StylusPlugin.cs
- MessageBox.cs
- BitmapMetadataBlob.cs
- updateconfighost.cs
- oledbmetadatacolumnnames.cs
- OutputCacheEntry.cs
- NamespaceEmitter.cs
- DrawingGroupDrawingContext.cs
- Collection.cs
- DesignerDataStoredProcedure.cs
- HTTP_SERVICE_CONFIG_URLACL_PARAM.cs
- ServicePointManagerElement.cs
- XslCompiledTransform.cs
- DataGridViewRowCollection.cs
- NavigatorOutput.cs
- _SecureChannel.cs
- RangeBaseAutomationPeer.cs
- ObjectRef.cs
- ObjectRef.cs
- HtmlTableCell.cs
- AtomMaterializerLog.cs
- GenericEnumerator.cs
- PackagingUtilities.cs
- ScriptingJsonSerializationSection.cs
- VectorCollection.cs
- QilInvokeLateBound.cs
- ContextStaticAttribute.cs
- Cloud.cs
- ISAPIRuntime.cs
- EventLogger.cs
- PatternMatcher.cs
- InfoCardSymmetricAlgorithm.cs
- AccessViolationException.cs
- DecoderFallback.cs
- ObjectConverter.cs
- FixedSchema.cs
- DataGridViewTextBoxEditingControl.cs
- EmptyWithCancelationCheckWorkItem.cs
- DataFormat.cs
- DynamicILGenerator.cs
- StrokeNodeEnumerator.cs
- AsymmetricKeyExchangeDeformatter.cs
- InstanceCreationEditor.cs
- DependencyProperty.cs
- CompositionTarget.cs
- BamlMapTable.cs
- IxmlLineInfo.cs
- TextAdaptor.cs
- MatrixIndependentAnimationStorage.cs
- DefaultAssemblyResolver.cs
- HostedNamedPipeTransportManager.cs
- DataControlPagerLinkButton.cs
- SqlErrorCollection.cs
- ResourceReferenceExpression.cs
- TableItemPatternIdentifiers.cs
- Mapping.cs
- RegularExpressionValidator.cs
- UpdateManifestForBrowserApplication.cs
- DockAndAnchorLayout.cs
- HwndStylusInputProvider.cs
- DebuggerAttributes.cs
- ObjectDataSourceFilteringEventArgs.cs
- TraceData.cs
- ZipIOLocalFileHeader.cs
- XsltOutput.cs
- EventEntry.cs
- StringAnimationBase.cs
- RecordsAffectedEventArgs.cs
- OverrideMode.cs
- DesignerEditorPartChrome.cs
- EventListener.cs
- OLEDB_Enum.cs
- ConnectivityStatus.cs
- AxHost.cs
- ToolStripContainer.cs
- PaperSource.cs
- TextTreeInsertElementUndoUnit.cs
- validationstate.cs
- XMLUtil.cs
- GridProviderWrapper.cs
- TreeChangeInfo.cs
- PlacementWorkspace.cs
- EncoderParameter.cs
- RoutedEvent.cs
- Transactions.cs
- MergeFilterQuery.cs
- ProviderConnectionPoint.cs
- XmlValueConverter.cs