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
- ObjectStateEntryBaseUpdatableDataRecord.cs
- EventHandlingScope.cs
- CellIdBoolean.cs
- FrameworkReadOnlyPropertyMetadata.cs
- CqlParser.cs
- mediaeventshelper.cs
- ThreadStartException.cs
- MsmqTransportSecurity.cs
- EntityConnection.cs
- UIElement3DAutomationPeer.cs
- WindowsToolbar.cs
- TextDecorations.cs
- PackageDigitalSignature.cs
- SerializationObjectManager.cs
- DataGridColumnHeaderItemAutomationPeer.cs
- COM2PropertyBuilderUITypeEditor.cs
- HtmlTable.cs
- Unit.cs
- Shape.cs
- DataBoundControlActionList.cs
- TextServicesContext.cs
- BinaryFormatterWriter.cs
- InnerItemCollectionView.cs
- MessageFilter.cs
- CommonDialog.cs
- UIElement3D.cs
- SerialReceived.cs
- XmlEnumAttribute.cs
- ClientFactory.cs
- GeometryModel3D.cs
- DocumentViewerAutomationPeer.cs
- EmptyQuery.cs
- Environment.cs
- SafeMILHandleMemoryPressure.cs
- PatternMatcher.cs
- QuaternionConverter.cs
- VoiceChangeEventArgs.cs
- SnapshotChangeTrackingStrategy.cs
- PerfProviderCollection.cs
- StaticFileHandler.cs
- DecoderNLS.cs
- LicFileLicenseProvider.cs
- ByeMessageApril2005.cs
- ToolTipService.cs
- XhtmlTextWriter.cs
- ISCIIEncoding.cs
- ConfigXmlAttribute.cs
- RenderingBiasValidation.cs
- NumberFormatInfo.cs
- PeerNameRecord.cs
- Interfaces.cs
- SyndicationSerializer.cs
- ResourceWriter.cs
- DBAsyncResult.cs
- LiteralControl.cs
- SystemInfo.cs
- RenderingBiasValidation.cs
- SchemaInfo.cs
- StaticSiteMapProvider.cs
- PropertyEmitterBase.cs
- PolicyManager.cs
- URI.cs
- CompilationLock.cs
- HexParser.cs
- WeakEventTable.cs
- IMembershipProvider.cs
- PolyBezierSegment.cs
- FormatVersion.cs
- RemotingAttributes.cs
- PackageDigitalSignatureManager.cs
- XamlReaderHelper.cs
- ZipFileInfo.cs
- Popup.cs
- ConvertEvent.cs
- GZipDecoder.cs
- BufferedGraphicsManager.cs
- Selector.cs
- RenderOptions.cs
- ParsedRoute.cs
- DockEditor.cs
- AliasedExpr.cs
- WeakReadOnlyCollection.cs
- FlowDocumentReaderAutomationPeer.cs
- WmfPlaceableFileHeader.cs
- xsdvalidator.cs
- WebServiceHandlerFactory.cs
- GrammarBuilderDictation.cs
- ValidationVisibilityAttribute.cs
- DataGridCellItemAutomationPeer.cs
- _NestedMultipleAsyncResult.cs
- WebPartChrome.cs
- ResourcePermissionBaseEntry.cs
- ColumnTypeConverter.cs
- ProviderUtil.cs
- ParseNumbers.cs
- XmlSchemaGroupRef.cs
- AlphabeticalEnumConverter.cs
- MetadataFile.cs
- BufferModesCollection.cs
- InternalConfigEventArgs.cs