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
- DataControlCommands.cs
- TemplateControl.cs
- HttpClientCertificate.cs
- KeyTime.cs
- CodeGotoStatement.cs
- GeometryValueSerializer.cs
- StringInfo.cs
- CallSite.cs
- AmbientValueAttribute.cs
- Style.cs
- StorageInfo.cs
- Publisher.cs
- RC2CryptoServiceProvider.cs
- ReliableReplySessionChannel.cs
- TemplateNameScope.cs
- ToolTip.cs
- ServicePoint.cs
- TextBlockAutomationPeer.cs
- StatementContext.cs
- PolyBezierSegment.cs
- TransformGroup.cs
- XamlDesignerSerializationManager.cs
- ObjectDisposedException.cs
- CodeAttributeDeclarationCollection.cs
- WindowsStatusBar.cs
- HttpGetClientProtocol.cs
- wmiprovider.cs
- CorruptingExceptionCommon.cs
- ProtocolElementCollection.cs
- InputScopeNameConverter.cs
- XPathException.cs
- MouseGesture.cs
- CodePageUtils.cs
- Comparer.cs
- SecurityPermission.cs
- UserInitiatedRoutedEventPermissionAttribute.cs
- ArglessEventHandlerProxy.cs
- localization.cs
- ObjectListDataBindEventArgs.cs
- MarginCollapsingState.cs
- Italic.cs
- UIAgentCrashedException.cs
- NameTable.cs
- FontFamilyConverter.cs
- FormsAuthenticationEventArgs.cs
- SchemaLookupTable.cs
- InstalledVoice.cs
- DbDeleteCommandTree.cs
- PlanCompilerUtil.cs
- TdsParserStaticMethods.cs
- EventDescriptor.cs
- SymbolMethod.cs
- sqlmetadatafactory.cs
- RuleSetBrowserDialog.cs
- WebPartHelpVerb.cs
- Mappings.cs
- IntegerValidatorAttribute.cs
- NewExpression.cs
- EventLog.cs
- XmlAttributeAttribute.cs
- ImageBrush.cs
- SqlDataSourceDesigner.cs
- WindowsGraphicsCacheManager.cs
- NotifyInputEventArgs.cs
- CheckBoxFlatAdapter.cs
- DetailsViewUpdatedEventArgs.cs
- XmlConverter.cs
- VerifyHashRequest.cs
- Size.cs
- Ref.cs
- MultiByteCodec.cs
- RoleManagerModule.cs
- UserControl.cs
- QfeChecker.cs
- Triangle.cs
- AnimationClockResource.cs
- DesignerTransaction.cs
- OdbcParameter.cs
- ToolStripMenuItem.cs
- AlignmentXValidation.cs
- DPTypeDescriptorContext.cs
- PngBitmapDecoder.cs
- BitmapDecoder.cs
- SqlComparer.cs
- CodeMemberMethod.cs
- WsdlInspector.cs
- List.cs
- _HeaderInfo.cs
- SHA384Managed.cs
- InplaceBitmapMetadataWriter.cs
- OdbcException.cs
- JumpPath.cs
- BridgeDataReader.cs
- TreeViewHitTestInfo.cs
- ObjectItemAttributeAssemblyLoader.cs
- Stylesheet.cs
- InvokeWebService.cs
- StaticResourceExtension.cs
- Calendar.cs
- Pens.cs