Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / Channels / StandardBindingImporter.cs / 1 / StandardBindingImporter.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.ServiceModel.Channels { using System.Xml; using System.ServiceModel; using System.ServiceModel.Description; using System.Xml.Schema; using System.Collections.ObjectModel; using System.Collections.Generic; using WsdlNS=System.Web.Services.Description; public class StandardBindingImporter : IWsdlImportExtension { void IWsdlImportExtension.BeforeImport(WsdlNS.ServiceDescriptionCollection wsdlDocuments, XmlSchemaSet xmlSchemas, ICollectionpolicy) { } void IWsdlImportExtension.ImportContract(WsdlImporter importer, WsdlContractConversionContext context) { } void IWsdlImportExtension.ImportEndpoint(WsdlImporter importer, WsdlEndpointConversionContext endpointContext) { if (endpointContext == null) throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("endpointContext"); #pragma warning suppress 56506 // [....], endpointContext.Endpoint is never null if (endpointContext.Endpoint.Binding == null) throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("endpointContext.Binding"); if (endpointContext.Endpoint.Binding is CustomBinding) { BindingElementCollection elements = ((CustomBinding)endpointContext.Endpoint.Binding).Elements; Binding binding; TransportBindingElement transport = elements.Find (); if (transport is HttpTransportBindingElement) { if (WSHttpBindingBase.TryCreate(elements, out binding)) { SetBinding(endpointContext.Endpoint, binding); } else if (WSDualHttpBinding.TryCreate(elements, out binding)) { SetBinding(endpointContext.Endpoint, binding); } else if (BasicHttpBinding.TryCreate(elements, out binding)) { SetBinding(endpointContext.Endpoint, binding); } } else if (transport is MsmqTransportBindingElement && NetMsmqBinding.TryCreate(elements, out binding)) { SetBinding(endpointContext.Endpoint, binding); } else if (transport is NamedPipeTransportBindingElement && NetNamedPipeBinding.TryCreate(elements, out binding)) { SetBinding(endpointContext.Endpoint, binding); } else if (transport is PeerTransportBindingElement && NetPeerTcpBinding.TryCreate(elements, out binding)) { SetBinding(endpointContext.Endpoint, binding); } else if (transport is TcpTransportBindingElement && NetTcpBinding.TryCreate(elements, out binding)) { SetBinding(endpointContext.Endpoint, binding); } } } void SetBinding(ServiceEndpoint endpoint, Binding binding) { binding.Name = endpoint.Binding.Name; binding.Namespace = endpoint.Binding.Namespace; endpoint.Binding = binding; } } } // 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
- SqlInternalConnectionSmi.cs
- EditorZoneDesigner.cs
- HttpHostedTransportConfiguration.cs
- SweepDirectionValidation.cs
- ResourceManagerWrapper.cs
- RadioButtonPopupAdapter.cs
- PieceNameHelper.cs
- SplitterPanel.cs
- GacUtil.cs
- Sql8ExpressionRewriter.cs
- BufferedStream.cs
- ClassicBorderDecorator.cs
- LowerCaseStringConverter.cs
- DataQuery.cs
- ConstraintStruct.cs
- LambdaCompiler.Lambda.cs
- KeyEvent.cs
- SqlProfileProvider.cs
- OrderedDictionary.cs
- SafePEFileHandle.cs
- ExceptionHandler.cs
- DataMemberConverter.cs
- DllNotFoundException.cs
- FolderLevelBuildProviderCollection.cs
- Vector3DCollectionConverter.cs
- MachineSettingsSection.cs
- TreeIterators.cs
- RC2CryptoServiceProvider.cs
- FrameworkContentElementAutomationPeer.cs
- SizeChangedEventArgs.cs
- ProviderConnectionPoint.cs
- QueryableFilterUserControl.cs
- errorpatternmatcher.cs
- MonitorWrapper.cs
- LoadedOrUnloadedOperation.cs
- JoinCqlBlock.cs
- BufferedStream.cs
- ColumnHeaderConverter.cs
- TableLayoutCellPaintEventArgs.cs
- XXXOnTypeBuilderInstantiation.cs
- TreeNode.cs
- XmlNamespaceMapping.cs
- DecimalAnimationUsingKeyFrames.cs
- DictationGrammar.cs
- SslStream.cs
- Semaphore.cs
- SoapServerMethod.cs
- WindowsScrollBar.cs
- ProxyWebPartManager.cs
- DbConnectionPoolOptions.cs
- SolidColorBrush.cs
- AmbientLight.cs
- EntityUtil.cs
- SecurityTokenAuthenticator.cs
- Int32RectValueSerializer.cs
- ComboBoxAutomationPeer.cs
- ServiceActivationException.cs
- _SSPISessionCache.cs
- NamedPipeConnectionPoolSettingsElement.cs
- Command.cs
- DesignerSerializerAttribute.cs
- TextWriter.cs
- Site.cs
- FontFamilyIdentifier.cs
- CryptoConfig.cs
- PlanCompilerUtil.cs
- figurelength.cs
- NativeRightsManagementAPIsStructures.cs
- UrlAuthorizationModule.cs
- SByteConverter.cs
- CreateDataSourceDialog.cs
- sqlinternaltransaction.cs
- TextElementEnumerator.cs
- PageParser.cs
- MonitorWrapper.cs
- TextShapeableCharacters.cs
- FileStream.cs
- ReflectTypeDescriptionProvider.cs
- BindingCollection.cs
- WindowsToolbarAsMenu.cs
- StyleXamlParser.cs
- LogicalExpr.cs
- XmlSchemaImport.cs
- DoubleAverageAggregationOperator.cs
- ComponentChangingEvent.cs
- SudsCommon.cs
- DesignerResources.cs
- Timeline.cs
- _ConnectOverlappedAsyncResult.cs
- Point3DKeyFrameCollection.cs
- GACMembershipCondition.cs
- ArrayElementGridEntry.cs
- PropertyTabAttribute.cs
- ImportException.cs
- StylusDevice.cs
- HtmlControlPersistable.cs
- QuaternionValueSerializer.cs
- UIElementCollection.cs
- Assert.cs
- ErrorFormatterPage.cs