SoapHttpClientProtocol イベント
SoapHttpClientProtocol クラス
アセンブリ: System.Web.Services (system.web.services.dll 内)


XML Web サービス クライアントを構築する場合は、WebClientProtocol から間接または直接に派生したプロキシ クラスを、その XML Web サービス用に作成する必要があります。XML Web サービス クライアントが SOAP を使用して呼び出しを行う場合、プロキシ クラスは、HttpWebClientProtocol から派生した SoapHttpClientProtocol から派生する必要があります。HttpWebClientProtocol はさらに、WebClientProtocol から派生しています。
XML Web サービスと通信するには、呼び出す XML Web サービス用に、WebClientProtocol から間接または直接に派生したプロキシ クラスを作成します。プロキシ クラスを手動で作成する代わりに、Web サービス記述言語ツール (Wsdl.exe) を使用して、指定された XML Web サービスのサービス記述からプロキシ クラスを作成します。SOAP プロトコルに対応するプロキシ クラスが生成されると、XML Web サービス メソッドへの同期呼び出しは Invoke メソッドを通じて行われますが、非同期呼び出しは BeginInvoke メソッドおよび EndInvoke メソッドを通じて行われます。
継承時の注意 このクラスをオーバーライドすると、特定のタイプの XML Web サービスに固有のメソッドを派生クラスに導入できます。これらのメソッドはパラメータをキャプチャし、XML Web サービスと通信する作業を実行する基本クラスを呼び出します。導入されたメソッドが非同期の場合は、BeginInvoke メソッドおよび EndInvoke メソッドを呼び出します。導入されたメソッドが同期の場合は、Invoke メソッドを呼び出します。オーバーライドされたコンストラクタは、通常、Url プロパティに XML Web サービス メソッドの URL を設定します。
Wsdl.exe によって、Math XML Web サービス用に生成されるプロキシ クラスのコード例を次に示します。プロキシ クラスは、SoapHttpClientProtocol から派生します。このクラスは、WebClientProtocol 抽象クラスから派生します。
Option Strict On Option Explicit On Imports System Imports System.Diagnostics Imports System.Web.Services Imports System.Web.Services.Protocols Imports System.Xml.Serialization Namespace MyMath <System.Web.Services.WebServiceBindingAttribute(Name:="MyMathSoap", [Namespace]:="http://www.contoso.com/")> _ Public Class MyMath Inherits System.Web.Services.Protocols.SoapHttpClientProtocol <System.Diagnostics.DebuggerStepThroughAttribute()> _ Public Sub New() MyBase.New Me.Url = "http://www.contoso.com/math.asmx" End Sub <System.Diagnostics.DebuggerStepThroughAttribute(), _ System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://www.contoso.com/Add", RequestNamespace:="http://www.contoso.com/", ResponseNamespace:="http://www.contoso.com/", Use:=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle:=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)> _ Public Function Add(ByVal num1 As Integer, ByVal num2 As Integer) As Integer Dim results() As Object = Me.Invoke("Add", New Object() {num1, num2}) Return CType(results(0),Integer) End Function <System.Diagnostics.DebuggerStepThroughAttribute()> _ Public Function BeginAdd(ByVal num1 As Integer, ByVal num2 As Integer, ByVal callback As System.AsyncCallback, ByVal asyncState As Object) As System.IAsyncResult Return Me.BeginInvoke("Add", New Object() {num1, num2}, callback, asyncState) End Function <System.Diagnostics.DebuggerStepThroughAttribute()> _ Public Function EndAdd(ByVal asyncResult As System.IAsyncResult) As Integer Dim results() As Object = Me.EndInvoke(asyncResult) Return CType(results(0),Integer) End Function End Class End Namespace
namespace MyMath { using System.Diagnostics; using System.Xml.Serialization; using System; using System.Web.Services.Protocols; using System.Web.Services; [System.Web.Services.WebServiceBindingAttribute(Name="MyMathSoap", Namespace="http://www.contoso.com/")] public class MyMath : System.Web.Services.Protocols.SoapHttpClientProtocol { [System.Diagnostics.DebuggerStepThroughAttribute()] public MyMath() { this.Url = "http://www.contoso.com/math.asmx"; } [System.Diagnostics.DebuggerStepThroughAttribute()] [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://www.contoso.com/Add", RequestNamespace="http://www.contoso.com/", ResponseNamespace="http://www.contoso.com/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] public int Add(int num1, int num2) { object[] results = this.Invoke("Add", new object[] {num1, num2}); return ((int)(results[0])); } [System.Diagnostics.DebuggerStepThroughAttribute()] public System.IAsyncResult BeginAdd(int num1, int num2, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("Add", new object[] {num1, num2}, callback, asyncState); } [System.Diagnostics.DebuggerStepThroughAttribute()] public int EndAdd(System.IAsyncResult asyncResult) { object[] results = this.EndInvoke(asyncResult); return ((int)(results[0])); } } }
#using <System.Web.Services.dll> #using <System.Xml.dll> #using <System.dll> using namespace System::Diagnostics; using namespace System::Xml::Serialization; using namespace System; using namespace System::Web::Services::Protocols; using namespace System::Web::Services; namespace MyMath { [System::Web::Services::WebServiceBindingAttribute(Name="MyMathSoap" ,Namespace="http://www.contoso.com/")] public ref class MyMath: public System::Web::Services::Protocols::SoapHttpClientProtocol { public: [System::Diagnostics::DebuggerStepThroughAttribute] MyMath() { this->Url = "http://www.contoso.com/math.asmx"; } [System::Diagnostics::DebuggerStepThroughAttribute] [System::Web::Services::Protocols::SoapDocumentMethodAttribute("http://www.contoso.com/Add" , RequestNamespace="http://www.contoso.com/",ResponseNamespace="http://www.contoso.com/" , Use=System::Web::Services::Description::SoapBindingUse::Literal, ParameterStyle=System::Web::Services::Protocols::SoapParameterStyle::Wrapped)] int Add( int num1, int num2 ) { array<Object^>^temp0 = {num1,num2}; array<Object^>^results = this->Invoke( "Add", temp0 ); return *dynamic_cast<int^>(results[ 0 ]); } [System::Diagnostics::DebuggerStepThroughAttribute] System::IAsyncResult^ BeginAdd( int num1, int num2, System::AsyncCallback^ callback, Object^ asyncState ) { array<Object^>^temp1 = {num1,num2}; return this->BeginInvoke( "Add", temp1, callback, asyncState ); } [System::Diagnostics::DebuggerStepThroughAttribute] int EndAdd( System::IAsyncResult^ asyncResult ) { array<Object^>^results = this->EndInvoke( asyncResult ); return *dynamic_cast<int^>(results[ 0 ]); } }; }
package MyMath; import System.Diagnostics.*; import System.Xml.Serialization.*; import System.*; import System.Web.Services.Protocols.*; import System.Web.Services.*; /** @attribute System.Web.Services.WebServiceBindingAttribute( Name = "MyMathSoap", Namespace = "http://www.contoso.com/") */ public class MyMath extends System.Web.Services.Protocols.SoapHttpClientProtocol { /** @attribute System.Diagnostics.DebuggerStepThroughAttribute() */ public MyMath() { this.set_Url("http://www.contoso.com/math.asmx"); } //MyMath /** @attribute System.Diagnostics.DebuggerStepThroughAttribute() */ /** @attribute System.Web.Services.Protocols.SoapDocumentMethodAttribute( "http://www.contoso.com/Add", RequestNamespace = "http://www.contoso.com/", ResponseNamespace = "http://www.contoso.com/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped) */ public int Add(int num1, int num2) { Object results[] = this.Invoke("Add", new Object[] { (Int32)num1, (Int32)num2 }); return (int)((Int32)results.get_Item(0)); } //Add /** @attribute System.Diagnostics.DebuggerStepThroughAttribute() */ public System.IAsyncResult BeginAdd(int num1, int num2, System.AsyncCallback callback, Object asyncState) { return this.BeginInvoke("Add", new Object[] { (Int32)num1, (Int32)num2 }, callback, asyncState); } //BeginAdd /** @attribute System.Diagnostics.DebuggerStepThroughAttribute() */ public int EndAdd(System.IAsyncResult asyncResult) { Object results[] = this.EndInvoke(asyncResult); return (int)((Int32)results.get_Item(0)); } //EndAdd } //MyMath
前述のプロキシ クラスの生成元になった Math XML Web サービスのコード例を次に示します。
<%@ WebService Language="VB" Class="MyMath"%> Imports System.Web.Services Imports System <WebService(Namespace:="http://www.contoso.com/")> _ Public Class MyMath <WebMethod()> _ Public Function Add(num1 As Integer, num2 As Integer) As Integer Return num1 + num2 End Function 'Add End Class 'Math

System.MarshalByRefObject
System.ComponentModel.Component
System.Web.Services.Protocols.WebClientProtocol
System.Web.Services.Protocols.HttpWebClientProtocol
System.Web.Services.Protocols.SoapHttpClientProtocol


Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


SoapHttpClientProtocol コンストラクタ
アセンブリ: System.Web.Services (system.web.services.dll 内)


Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


SoapHttpClientProtocol プロパティ

名前 | 説明 | |
---|---|---|
![]() | AllowAutoRedirect | クライアントがサーバーのリダイレクトに自動的に従うかどうかを取得または設定します。 ( HttpWebClientProtocol から継承されます。) |
![]() | ClientCertificates | クライアント証明書のコレクションを取得します。 ( HttpWebClientProtocol から継承されます。) |
![]() | ConnectionGroupName | 要求に対して使用する接続グループの名前を取得または設定します。 ( WebClientProtocol から継承されます。) |
![]() | Container | Component を格納している IContainer を取得します。 ( Component から継承されます。) |
![]() | CookieContainer | cookie のコレクションを取得または設定します。 ( HttpWebClientProtocol から継承されます。) |
![]() | Credentials | XML Web サービス クライアント認証のセキュリティ資格情報を取得または設定します。 ( WebClientProtocol から継承されます。) |
![]() | EnableDecompression | この HttpWebClientProtocol の圧縮解除が有効かどうかを示す Boolean を取得または設定します。既定値は true です。 ( HttpWebClientProtocol から継承されます。) |
![]() | PreAuthenticate | 事前認証を有効にするかどうかを取得または設定します。 ( WebClientProtocol から継承されます。) |
![]() | Proxy | ファイアウォールをとおして XML Web サービス要求を行うためのプロキシ情報を取得または設定します。 ( HttpWebClientProtocol から継承されます。) |
![]() | RequestEncoding | クライアントが XML Web サービスを要求するときに使用される Encoding。 ( WebClientProtocol から継承されます。) |
![]() | Site | Component の ISite を取得または設定します。 ( Component から継承されます。) |
![]() | Timeout | 同期的な XML Web サービスの要求が完了するのを XML Web サービス クライアントが待機する時間 (ミリ秒単位) を示します。 ( WebClientProtocol から継承されます。) |
![]() | UnsafeAuthenticatedConnectionSharing | XML Web サービスをホストしている Web サービスに接続するときにクライアントが NTLM 認証を使用する場合、接続共有が有効になっているかどうかを示す値を取得または設定します。 ( HttpWebClientProtocol から継承されます。) |
![]() | Url | クライアントが要求している XML Web サービスのベース URL を取得または設定します。 ( WebClientProtocol から継承されます。) |
![]() | UseDefaultCredentials | Credentials プロパティを CredentialCache.DefaultCredentials プロパティの値に設定するかどうかを示す値を取得または設定します。 ( WebClientProtocol から継承されます。) |
![]() | UserAgent | それぞれの要求と共に送信されるユーザー エージェント ヘッダーの値を取得または設定します。 ( HttpWebClientProtocol から継承されます。) |

名前 | 説明 | |
---|---|---|
![]() | CanRaiseEvents | コンポーネントがイベントを発生させることがきるかどうかを示す値を取得します。 ( Component から継承されます。) |
![]() | DesignMode | Component が現在デザイン モードかどうかを示す値を取得します。 ( Component から継承されます。) |
![]() | Events | Component に結び付けられているイベント ハンドラのリストを取得します。 ( Component から継承されます。) |

SoapHttpClientProtocol メソッド



SoapHttpClientProtocol メンバ
SOAP 使用時のクライアント プロキシの派生元となるクラスを指定します。
SoapHttpClientProtocol データ型で公開されるメンバを以下の表に示します。


名前 | 説明 | |
---|---|---|
![]() | AllowAutoRedirect | クライアントがサーバーのリダイレクトに自動的に従うかどうかを取得または設定します。(HttpWebClientProtocol から継承されます。) |
![]() | ClientCertificates | クライアント証明書のコレクションを取得します。(HttpWebClientProtocol から継承されます。) |
![]() | ConnectionGroupName | 要求に対して使用する接続グループの名前を取得または設定します。(WebClientProtocol から継承されます。) |
![]() | Container | Component を格納している IContainer を取得します。(Component から継承されます。) |
![]() | CookieContainer | cookie のコレクションを取得または設定します。(HttpWebClientProtocol から継承されます。) |
![]() | Credentials | XML Web サービス クライアント認証のセキュリティ資格情報を取得または設定します。(WebClientProtocol から継承されます。) |
![]() | EnableDecompression | この HttpWebClientProtocol の圧縮解除が有効かどうかを示す Boolean を取得または設定します。既定値は true です。(HttpWebClientProtocol から継承されます。) |
![]() | PreAuthenticate | 事前認証を有効にするかどうかを取得または設定します。(WebClientProtocol から継承されます。) |
![]() | Proxy | ファイアウォールをとおして XML Web サービス要求を行うためのプロキシ情報を取得または設定します。(HttpWebClientProtocol から継承されます。) |
![]() | RequestEncoding | クライアントが XML Web サービスを要求するときに使用される Encoding。(WebClientProtocol から継承されます。) |
![]() | Site | Component の ISite を取得または設定します。(Component から継承されます。) |
![]() | Timeout | 同期的な XML Web サービスの要求が完了するのを XML Web サービス クライアントが待機する時間 (ミリ秒単位) を示します。(WebClientProtocol から継承されます。) |
![]() | UnsafeAuthenticatedConnectionSharing | XML Web サービスをホストしている Web サービスに接続するときにクライアントが NTLM 認証を使用する場合、接続共有が有効になっているかどうかを示す値を取得または設定します。(HttpWebClientProtocol から継承されます。) |
![]() | Url | クライアントが要求している XML Web サービスのベース URL を取得または設定します。(WebClientProtocol から継承されます。) |
![]() | UseDefaultCredentials | Credentials プロパティを CredentialCache.DefaultCredentials プロパティの値に設定するかどうかを示す値を取得または設定します。(WebClientProtocol から継承されます。) |
![]() | UserAgent | それぞれの要求と共に送信されるユーザー エージェント ヘッダーの値を取得または設定します。(HttpWebClientProtocol から継承されます。) |

名前 | 説明 | |
---|---|---|
![]() | CanRaiseEvents | コンポーネントがイベントを発生させることがきるかどうかを示す値を取得します。(Component から継承されます。) |
![]() | DesignMode | Component が現在デザイン モードかどうかを示す値を取得します。(Component から継承されます。) |
![]() | Events | Component に結び付けられているイベント ハンドラのリストを取得します。(Component から継承されます。) |




Weblioに収録されているすべての辞書からSoapHttpClientProtocolを検索する場合は、下記のリンクをクリックしてください。

- SoapHttpClientProtocolのページへのリンク