SoapBinding 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
表示已加入至 XML Web Service 內的 Binding 的擴充性。 此類別無法獲得繼承。
public ref class SoapBinding : System::Web::Services::Description::ServiceDescriptionFormatExtension
[System.Web.Services.Configuration.XmlFormatExtension("binding", "http://schemas.xmlsoap.org/wsdl/soap/", typeof(System.Web.Services.Description.Binding))]
[System.Web.Services.Configuration.XmlFormatExtensionPrefix("soap", "http://schemas.xmlsoap.org/wsdl/soap/")]
[System.Web.Services.Configuration.XmlFormatExtensionPrefix("soapenc", "http://schemas.xmlsoap.org/soap/encoding/")]
public class SoapBinding : System.Web.Services.Description.ServiceDescriptionFormatExtension
[<System.Web.Services.Configuration.XmlFormatExtension("binding", "http://schemas.xmlsoap.org/wsdl/soap/", typeof(System.Web.Services.Description.Binding))>]
[<System.Web.Services.Configuration.XmlFormatExtensionPrefix("soap", "http://schemas.xmlsoap.org/wsdl/soap/")>]
[<System.Web.Services.Configuration.XmlFormatExtensionPrefix("soapenc", "http://schemas.xmlsoap.org/soap/encoding/")>]
type SoapBinding = class
inherit ServiceDescriptionFormatExtension
Public Class SoapBinding
Inherits ServiceDescriptionFormatExtension
- 繼承
- 衍生
- 屬性
範例
#using <System.Xml.dll>
#using <System.Web.Services.dll>
#using <System.dll>
using namespace System;
using namespace System::Web::Services::Description;
using namespace System::Collections;
using namespace System::Xml;
int main()
{
ServiceDescription^ myDescription = ServiceDescription::Read( "AddNumbersInput_cs.wsdl" );
// Create a 'Binding' object for the 'SOAP' protocol.
Binding^ myBinding = gcnew Binding;
myBinding->Name = "Service1Soap";
XmlQualifiedName^ qualifiedName = gcnew XmlQualifiedName( "s0:Service1Soap" );
myBinding->Type = qualifiedName;
SoapBinding^ mySoapBinding = gcnew SoapBinding;
mySoapBinding->Transport = SoapBinding::HttpTransport;
mySoapBinding->Style = SoapBindingStyle::Document;
// Add the 'SoapBinding' object to the 'Binding' object.
myBinding->Extensions->Add( mySoapBinding );
// Create the 'OperationBinding' object for the 'SOAP' protocol.
OperationBinding^ myOperationBinding = gcnew OperationBinding;
myOperationBinding->Name = "AddNumbers";
// Create the 'SoapOperationBinding' object for the 'SOAP' protocol.
SoapOperationBinding^ mySoapOperationBinding = gcnew SoapOperationBinding;
mySoapOperationBinding->SoapAction = "http://tempuri.org/AddNumbers";
mySoapOperationBinding->Style = SoapBindingStyle::Document;
// Add the 'SoapOperationBinding' object to 'OperationBinding' object.
myOperationBinding->Extensions->Add( mySoapOperationBinding );
// Create the 'InputBinding' object for the 'SOAP' protocol.
InputBinding^ myInput = gcnew InputBinding;
SoapBodyBinding^ mySoapBinding1 = gcnew SoapBodyBinding;
mySoapBinding1->Use = SoapBindingUse::Literal;
myInput->Extensions->Add( mySoapBinding1 );
// Assign the 'InputBinding' to 'OperationBinding'.
myOperationBinding->Input = myInput;
// Create the 'OutputBinding' object' for the 'SOAP' protocol..
OutputBinding^ myOutput = gcnew OutputBinding;
myOutput->Extensions->Add( mySoapBinding1 );
// Assign the 'OutPutBinding' to 'OperationBinding'.
myOperationBinding->Output = myOutput;
// Add the 'OperationBinding' to 'Binding'.
myBinding->Operations->Add( myOperationBinding );
// Add the 'Binding' to 'BindingCollection' of 'ServiceDescription'.
myDescription->Bindings->Add( myBinding );
Port^ soapPort = gcnew Port;
soapPort->Name = "Service1Soap";
soapPort->Binding = gcnew XmlQualifiedName( "s0:Service1Soap" );
// Create a 'SoapAddressBinding' object for the 'SOAP' protocol.
SoapAddressBinding^ mySoapAddressBinding = gcnew SoapAddressBinding;
mySoapAddressBinding->Location = "http://localhost/AddNumbers.cs.asmx";
// Add the 'SoapAddressBinding' to the 'Port'.
soapPort->Extensions->Add( mySoapAddressBinding );
// Add the 'Port' to 'PortCollection' of 'ServiceDescription'.
myDescription->Services[ 0 ]->Ports->Add( soapPort );
// Write the 'ServiceDescription' as a WSDL file.
myDescription->Write( "AddNumbersOut_cs.wsdl" );
Console::WriteLine( " 'AddNumbersOut_cs.Wsdl' file was generated" );
}
using System;
using System.Web.Services.Description;
using System.Collections;
using System.Xml;
class MySoapClass
{
public static void Main()
{
ServiceDescription myDescription =
ServiceDescription.Read("AddNumbersInput_cs.wsdl");
// Create a 'Binding' object for the 'SOAP' protocol.
Binding myBinding = new Binding();
myBinding.Name = "Service1Soap";
XmlQualifiedName qualifiedName =
new XmlQualifiedName("s0:Service1Soap");
myBinding.Type = qualifiedName;
SoapBinding mySoapBinding = new SoapBinding();
mySoapBinding.Transport = SoapBinding.HttpTransport;
mySoapBinding.Style = SoapBindingStyle.Document;
// Add the 'SoapBinding' object to the 'Binding' object.
myBinding.Extensions.Add(mySoapBinding);
// Create the 'OperationBinding' object for the 'SOAP' protocol.
OperationBinding myOperationBinding = new OperationBinding();
myOperationBinding.Name = "AddNumbers";
// Create the 'SoapOperationBinding' object for the 'SOAP' protocol.
SoapOperationBinding mySoapOperationBinding =
new SoapOperationBinding();
mySoapOperationBinding.SoapAction = "http://tempuri.org/AddNumbers";
mySoapOperationBinding.Style = SoapBindingStyle.Document;
// Add the 'SoapOperationBinding' object to 'OperationBinding' object.
myOperationBinding.Extensions.Add(mySoapOperationBinding);
// Create the 'InputBinding' object for the 'SOAP' protocol.
InputBinding myInput = new InputBinding();
SoapBodyBinding mySoapBinding1 = new SoapBodyBinding();
mySoapBinding1.Use= SoapBindingUse.Literal;
myInput.Extensions.Add(mySoapBinding1);
// Assign the 'InputBinding' to 'OperationBinding'.
myOperationBinding.Input = myInput;
// Create the 'OutputBinding' object' for the 'SOAP' protocol..
OutputBinding myOutput = new OutputBinding();
myOutput.Extensions.Add(mySoapBinding1);
// Assign the 'OutPutBinding' to 'OperationBinding'.
myOperationBinding.Output = myOutput;
// Add the 'OperationBinding' to 'Binding'.
myBinding.Operations.Add(myOperationBinding);
// Add the 'Binding' to 'BindingCollection' of 'ServiceDescription'.
myDescription.Bindings.Add(myBinding);
Port soapPort = new Port();
soapPort.Name = "Service1Soap";
soapPort.Binding = new XmlQualifiedName("s0:Service1Soap");
// Create a 'SoapAddressBinding' object for the 'SOAP' protocol.
SoapAddressBinding mySoapAddressBinding =
new SoapAddressBinding();
mySoapAddressBinding.Location = "http://localhost/AddNumbers.cs.asmx";
// Add the 'SoapAddressBinding' to the 'Port'.
soapPort.Extensions.Add(mySoapAddressBinding);
// Add the 'Port' to 'PortCollection' of 'ServiceDescription'.
myDescription.Services[0].Ports.Add(soapPort);
// Write the 'ServiceDescription' as a WSDL file.
myDescription.Write("AddNumbersOut_cs.wsdl");
Console.WriteLine(" 'AddNumbersOut_cs.Wsdl' file was generated");
}
}
Imports System.Web.Services.Description
Imports System.Collections
Imports System.Xml
Class MySoapClass
Public Shared Sub Main()
Dim myDescription As ServiceDescription = _
ServiceDescription.Read("AddNumbersInput_vb.wsdl")
' Create a 'Binding' object for the 'SOAP' protocol.
Dim myBinding As New Binding()
myBinding.Name = "Service1Soap"
Dim qualifiedName As New XmlQualifiedName("s0:Service1Soap")
myBinding.Type = qualifiedName
Dim mySoapBinding As New SoapBinding()
mySoapBinding.Transport = SoapBinding.HttpTransport
mySoapBinding.Style = SoapBindingStyle.Document
' Add the 'SoapBinding' object to the 'Binding' object.
myBinding.Extensions.Add(mySoapBinding)
' Create the 'OperationBinding' object for the 'SOAP' protocol.
Dim myOperationBinding As New OperationBinding()
myOperationBinding.Name = "AddNumbers"
' Create the 'SoapOperationBinding' object for the 'SOAP' protocol.
Dim mySoapOperationBinding As New SoapOperationBinding()
mySoapOperationBinding.SoapAction = "http://tempuri.org/AddNumbers"
mySoapOperationBinding.Style = SoapBindingStyle.Document
' Add the 'SoapOperationBinding' object to 'OperationBinding' object.
myOperationBinding.Extensions.Add(mySoapOperationBinding)
' Create the 'InputBinding' object for the 'SOAP' protocol.
Dim myInput As New InputBinding()
Dim mySoapBinding1 As New SoapBodyBinding()
mySoapBinding1.Use = SoapBindingUse.Literal
myInput.Extensions.Add(mySoapBinding1)
' Assign the 'InputBinding' to 'OperationBinding'.
myOperationBinding.Input = myInput
' Create the 'OutputBinding' object' for the 'SOAP' protocol.
Dim myOutput As New OutputBinding()
myOutput.Extensions.Add(mySoapBinding1)
' Assign the 'OutPutBinding' to 'OperationBinding'.
myOperationBinding.Output = myOutput
' Add the 'OperationBinding' to 'Binding'.
myBinding.Operations.Add(myOperationBinding)
' Add the 'Binding' to 'BindingCollection' of 'ServiceDescription'.
myDescription.Bindings.Add(myBinding)
Dim soapPort As New Port()
soapPort.Name = "Service1Soap"
soapPort.Binding = New XmlQualifiedName("s0:Service1Soap")
' Create a 'SoapAddressBinding' object for the 'SOAP' protocol.
Dim mySoapAddressBinding As New SoapAddressBinding()
mySoapAddressBinding.Location = "http://localhost/AddNumbers.vb.asmx"
' Add the 'SoapAddressBinding' to the 'Port'.
soapPort.Extensions.Add(mySoapAddressBinding)
' Add the 'Port' to 'PortCollection' of 'ServiceDescription'.
myDescription.Services(0).Ports.Add(soapPort)
' Write the 'ServiceDescription' as a WSDL file.
myDescription.Write("AddNumbersOut_vb.wsdl")
Console.WriteLine(" 'AddNumbersOut_vb.Wsdl' file was generated")
End Sub
End Class
備註
這個類別會指定數據傳輸將使用SOAP通訊協定1.1版。
如需指定 XML Web 服務的通訊協議的詳細資訊,請參閱 使用 ASP.NET 的 XML Web 服務。 如需 Web 服務描述語言 (WSDL) 的詳細資訊,請參閱 WSDL 規格。
建構函式
SoapBinding() |
初始化 SoapBinding 類別的執行個體。 |
欄位
HttpTransport |
指定 SOAP 資料的 HTTP 傳輸來取得標準傳輸協定的 URI。 這個欄位為常數。 |
Namespace |
為 SoapBinding 類別的 XML 命名空間 (Namespace) 取得 URI。 這個欄位為常數。 |
屬性
Handled |
取得或設定值,指出 ServiceDescriptionFormatExtension 是否在擴充性項目匯入時由匯入處理序來使用。 (繼承來源 ServiceDescriptionFormatExtension) |
Parent |
取得 ServiceDescriptionFormatExtension 的父系。 (繼承來源 ServiceDescriptionFormatExtension) |
Required |
取得或設定值,指出 ServiceDescriptionFormatExtension 對它所參考的動作是否是必要的。 (繼承來源 ServiceDescriptionFormatExtension) |
Schema |
取得繫結結構描述,用於利用 SOAP 通訊協定 1.1 版傳輸資料。 |
Style |
指定 SoapBinding 所使用的 SOAP 繫結的型別。 |
Transport |
使用 SOAP 資料的 HTTP 傳輸規格來取得或設定 URI。 |
方法
Equals(Object) |
判斷指定的物件是否等於目前的物件。 (繼承來源 Object) |
GetHashCode() |
做為預設雜湊函式。 (繼承來源 Object) |
GetType() |
取得目前執行個體的 Type。 (繼承來源 Object) |
MemberwiseClone() |
建立目前 Object 的淺層複製。 (繼承來源 Object) |
ToString() |
傳回代表目前物件的字串。 (繼承來源 Object) |