Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Services / Web / System / Web / Services / Description / SoapHttpTransportImporter.cs / 1305376 / SoapHttpTransportImporter.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.Services.Description { using System.CodeDom; using System.Web.Services.Protocols; internal class SoapHttpTransportImporter : SoapTransportImporter { public override bool IsSupportedTransport(string transport) { return transport == SoapBinding.HttpTransport; } public override void ImportClass() { // grab this here so it gets marked "handled" for both client and server SoapAddressBinding soapAddress = ImportContext.Port == null ? null : (SoapAddressBinding)ImportContext.Port.Extensions.Find(typeof(SoapAddressBinding)); if (ImportContext.Style == ServiceDescriptionImportStyle.Client) { ImportContext.CodeTypeDeclaration.BaseTypes.Add(typeof(SoapHttpClientProtocol).FullName); CodeConstructor ctor = WebCodeGenerator.AddConstructor(ImportContext.CodeTypeDeclaration, new string[0], new string[0], null, CodeFlags.IsPublic); ctor.Comments.Add(new CodeCommentStatement(Res.GetString(Res.CodeRemarks), true)); bool soap11 = true; if (ImportContext is Soap12ProtocolImporter) { soap11 = false; // add version code CodeTypeReferenceExpression versionEnumTypeReference = new CodeTypeReferenceExpression(typeof(SoapProtocolVersion)); CodeFieldReferenceExpression versionEnumFieldReference = new CodeFieldReferenceExpression(versionEnumTypeReference, Enum.Format(typeof(SoapProtocolVersion), SoapProtocolVersion.Soap12, "G")); CodePropertyReferenceExpression versionPropertyReference = new CodePropertyReferenceExpression(new CodeThisReferenceExpression(), "SoapVersion"); CodeAssignStatement assignVersionStatement = new CodeAssignStatement(versionPropertyReference, versionEnumFieldReference); ctor.Statements.Add(assignVersionStatement); } ServiceDescription serviceDescription = ImportContext.Binding.ServiceDescription; string url = (soapAddress != null) ? soapAddress.Location : null; string urlKey = serviceDescription.AppSettingUrlKey; string baseUrl = serviceDescription.AppSettingBaseUrl; ProtocolImporterUtil.GenerateConstructorStatements(ctor, url, urlKey, baseUrl, soap11 && !ImportContext.IsEncodedBinding); } else if (ImportContext.Style == ServiceDescriptionImportStyle.Server) { ImportContext.CodeTypeDeclaration.BaseTypes.Add(typeof(WebService).FullName); } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- GeneralTransformGroup.cs
- Stylus.cs
- PassportAuthenticationModule.cs
- Rotation3D.cs
- TextRangeSerialization.cs
- InstallerTypeAttribute.cs
- DataAdapter.cs
- XamlReaderHelper.cs
- GridEntryCollection.cs
- GenerateTemporaryAssemblyTask.cs
- NativeMethods.cs
- HTMLTextWriter.cs
- FormatterServices.cs
- NotFiniteNumberException.cs
- AttachmentService.cs
- BuildProviderAppliesToAttribute.cs
- CustomAttribute.cs
- HttpHeaderCollection.cs
- KeyValueSerializer.cs
- ArraySegment.cs
- XomlSerializationHelpers.cs
- FileDetails.cs
- EventPrivateKey.cs
- Separator.cs
- ActivityBuilderHelper.cs
- ImplicitInputBrush.cs
- ReversePositionQuery.cs
- ChannelEndpointElement.cs
- Matrix3D.cs
- CharAnimationUsingKeyFrames.cs
- ServiceThrottle.cs
- Constants.cs
- DataGridRelationshipRow.cs
- autovalidator.cs
- UInt32Storage.cs
- DataGrid.cs
- SrgsGrammar.cs
- XmlBoundElement.cs
- TextServicesDisplayAttribute.cs
- SelectionPattern.cs
- HtmlTextArea.cs
- UpDownBase.cs
- TextBoxView.cs
- SkipQueryOptionExpression.cs
- SolidColorBrush.cs
- DesignTimeSiteMapProvider.cs
- RootAction.cs
- OpenFileDialog.cs
- DataGridParentRows.cs
- TreeIterator.cs
- DependencyPropertyKind.cs
- DataGridViewRowHeightInfoNeededEventArgs.cs
- Size3DValueSerializer.cs
- AsymmetricSignatureDeformatter.cs
- ConfigPathUtility.cs
- ScrollContentPresenter.cs
- Transaction.cs
- QuestionEventArgs.cs
- LinqDataSource.cs
- BamlBinaryReader.cs
- AssociationSet.cs
- Version.cs
- XmlSchemaGroupRef.cs
- XPathException.cs
- CommandValueSerializer.cs
- followingquery.cs
- SmtpNegotiateAuthenticationModule.cs
- ToolStripGrip.cs
- FactoryRecord.cs
- CryptoHelper.cs
- ResizingMessageFilter.cs
- ToolBarButtonClickEvent.cs
- BaseCollection.cs
- DataSvcMapFileSerializer.cs
- BridgeDataRecord.cs
- PageParser.cs
- ObjectDataSourceDisposingEventArgs.cs
- DataServiceStreamProviderWrapper.cs
- XmlEntity.cs
- MenuEventArgs.cs
- XPathNodeList.cs
- _OSSOCK.cs
- OrderedDictionary.cs
- Rights.cs
- SiteMembershipCondition.cs
- EventPrivateKey.cs
- SecurityState.cs
- DataDocumentXPathNavigator.cs
- SqlBulkCopy.cs
- MarkupCompilePass2.cs
- DetailsViewModeEventArgs.cs
- SemanticTag.cs
- PrintingPermissionAttribute.cs
- WebPartDescriptionCollection.cs
- RijndaelManagedTransform.cs
- BamlVersionHeader.cs
- HtmlTextBoxAdapter.cs
- Helpers.cs
- FieldBuilder.cs
- WebPartChrome.cs