EnvelopeVersion 類別

定義

包含與訊息及其交換相關聯之 SOAP 版本的相關資訊。

public ref class EnvelopeVersion sealed
public sealed class EnvelopeVersion
type EnvelopeVersion = class
Public NotInheritable Class EnvelopeVersion
繼承
EnvelopeVersion

範例

下列程式碼示範如何存取 EnvelopeVersion 的方法和屬性。


using System;
using System.Collections.Generic;
using System.ServiceModel;
using System.Text;

namespace CS
{
    class Program
    {
        static void Main(string[] args)
        {
            // MessageVersion
            EnvelopeVersion envS11 = EnvelopeVersion.Soap11;
            string nextDestS11 = envS11.NextDestinationActorValue;
            string[] ultDestsS11 = envS11.GetUltimateDestinationActorValues();
            string ultS11 = ultDestsS11[0];
            string toStrS11 = envS11.ToString();

            EnvelopeVersion envS12 = EnvelopeVersion.Soap12;

            EnvelopeVersion envNotSOAP =  EnvelopeVersion.None;

            string nextDestS12 = envS12.NextDestinationActorValue;

            string[] ultDestsS12 = envS12.GetUltimateDestinationActorValues();

            string ultS12 = ultDestsS12[1];

            string toStrS12 = envS12.ToString();

            EnvelopeVersion envNone = EnvelopeVersion.None;
            string nextDestNone = envNone.NextDestinationActorValue;
            //The following code throws a System.ArgumentReferenceException.
            //The object reference is not set to an instance of an object
            // string[] ultDestsNone = envNone.GetUltimateDestinationActorValues();
            string toStrNone = envNone.ToString();

             //EnvelopeVersions
            Console.WriteLine("EnvelopeVersion.Soap11: {0}", envS11);
            Console.WriteLine("EnvelopeVersion.Soap12: {0}", envS12);
            Console.WriteLine("EnvelopeVersion.None: {0}", envNone);
            Console.WriteLine();

            //NextDestination
            Console.WriteLine("NextDest EnvelopeVersion.Soap11: {0}", nextDestS11);
            Console.WriteLine("NextDest EnvelopeVersion.Soap12: {0}", nextDestS12);
            Console.WriteLine("NextDest EnvelopeVersion.None: {0}", nextDestNone);
            Console.WriteLine();

            //UltimateDestinations
            Console.WriteLine("UltDest EnvelopeVersion.Soap11: {0}", ultS11);
            Console.WriteLine("UltDest EnvelopeVersion.Soap12: {0}", ultS12);
            //Console.WriteLine("UltDest EnvelopeVersion.None: {0}", ultDestsNone);
            Console.WriteLine();

            //ToString
            Console.WriteLine("EnvelopeVersion.Soap11.ToString(): {0}", toStrS11);
            Console.WriteLine("EnvelopeVersion.Soap11.ToString(): {0}", toStrS12);
            Console.WriteLine("EnvelopeVersion.Soap11.ToString(): {0}", toStrNone);
            Console.WriteLine();
        }
    }
}
/*
Output:
EnvelopeVersion.Soap11: Soap11 (http://schemas.xmlsoap.org/soap/envelope/)
EnvelopeVersion.Soap12: Soap12 (http://www.w3.org/2003/05/soap-envelope)
EnvelopeVersion.None: EnvelopeNone (http://schemas.microsoft.com/ws/2005/05/envelope/none)

NextDest EnvelopeVersion.Soap11: http://schemas.xmlsoap.org/soap/actor/next
NextDest EnvelopeVersion.Soap12: http://www.w3.org/2003/05/soap-envelope/role/next
NextDest EnvelopeVersion.None:

UltDest EnvelopeVersion.Soap11:
UltDest EnvelopeVersion.Soap12:

EnvelopeVersion.Soap11.ToString(): Soap11 (http://schemas.xmlsoap.org/soap/envelope/)
EnvelopeVersion.Soap11.ToString(): Soap12 (http://www.w3.org/2003/05/soap-envelope)
EnvelopeVersion.Soap11.ToString(): EnvelopeNone (http://schemas.microsoft.com/ws/2005/05/envelope/none)
*/


Imports System.Collections.Generic
Imports System.ServiceModel
Imports System.Text

Namespace CS
    Module Module1
        Sub Main(ByVal args() As String)

            ' MessageVersion
            Dim envS11 As EnvelopeVersion = EnvelopeVersion.Soap11
            Dim nextDestS11 As String = envS11.NextDestinationActorValue
            Dim ultDestsS11() As String = envS11.GetUltimateDestinationActorValues()
            Dim ultS11 As String = ultDestsS11(0)
            Dim toStrS11 As String = envS11.ToString()

            Dim envS12 As EnvelopeVersion = EnvelopeVersion.Soap12

            Dim envNotSOAP As EnvelopeVersion = EnvelopeVersion.None

            Dim nextDestS12 As String = envS12.NextDestinationActorValue

            Dim ultDestsS12() As String = envS12.GetUltimateDestinationActorValues()

            Dim ultS12 As String = ultDestsS12(1)

            Dim toStrS12 As String = envS12.ToString()

            Dim envNone As EnvelopeVersion = EnvelopeVersion.None
            Dim nextDestNone As String = envNone.NextDestinationActorValue
            'The following code throws a System.ArgumentReferenceException.
            'The object reference is not set to an instance of an object
            ' string[] ultDestsNone = envNone.GetUltimateDestinationActorValues();
            Dim toStrNone As String = envNone.ToString()

            'EnvelopeVersions
            Console.WriteLine("EnvelopeVersion.Soap11: {0}", envS11)
            Console.WriteLine("EnvelopeVersion.Soap12: {0}", envS12)
            Console.WriteLine("EnvelopeVersion.None: {0}", envNone)
            Console.WriteLine()

            'NextDestination
            Console.WriteLine("NextDest EnvelopeVersion.Soap11: {0}", nextDestS11)
            Console.WriteLine("NextDest EnvelopeVersion.Soap12: {0}", nextDestS12)
            Console.WriteLine("NextDest EnvelopeVersion.None: {0}", nextDestNone)
            Console.WriteLine()

            'UltimateDestinations
            Console.WriteLine("UltDest EnvelopeVersion.Soap11: {0}", ultS11)
            Console.WriteLine("UltDest EnvelopeVersion.Soap12: {0}", ultS12)
            'Console.WriteLine("UltDest EnvelopeVersion.None: {0}", ultDestsNone);
            Console.WriteLine()

            'ToString
            Console.WriteLine("EnvelopeVersion.Soap11.ToString(): {0}", toStrS11)
            Console.WriteLine("EnvelopeVersion.Soap11.ToString(): {0}", toStrS12)
            Console.WriteLine("EnvelopeVersion.Soap11.ToString(): {0}", toStrNone)
            Console.WriteLine()

        End Sub
    End Module
End Namespace
'
' * 
' * 
' * 
'Output:
'EnvelopeVersion.Soap11: Soap11 (http://schemas.xmlsoap.org/soap/envelope/)
'EnvelopeVersion.Soap12: Soap12 (http://www.w3.org/2003/05/soap-envelope)
'EnvelopeVersion.None: EnvelopeNone (http://schemas.microsoft.com/ws/2005/05/envelope/none)
'
'NextDest EnvelopeVersion.Soap11: http://schemas.xmlsoap.org/soap/actor/next
'NextDest EnvelopeVersion.Soap12: http://www.w3.org/2003/05/soap-envelope/role/next
'NextDest EnvelopeVersion.None:
'
'UltDest EnvelopeVersion.Soap11:
'UltDest EnvelopeVersion.Soap12:
'
'EnvelopeVersion.Soap11.ToString(): Soap11 (http://schemas.xmlsoap.org/soap/envelope/)
'EnvelopeVersion.Soap11.ToString(): Soap12 (http://www.w3.org/2003/05/soap-envelope)
'EnvelopeVersion.Soap11.ToString(): EnvelopeNone (http://schemas.microsoft.com/ws/2005/05/envelope/none)
'

備註

目前可用的 SOAP 版本為 SOAP 1.1 和 SOAP 1.2。 每個版本的 SOAP 都有一個 EnvelopeVersion,可以使用 Soap11Soap12 屬性來復原。 此外,還有 None 訊息版本,可以用來傳送與接收不使用 SOAP 格式的 XML 訊息。 與每個訊息版本相關的處理角色,可以使用 NextDestinationActorValue 屬性和 GetUltimateDestinationActorValues 方法來復原。

屬性

NextDestinationActorValue

取得包含 SOAP 角色之 URI 名稱的字串,此角色與下個目的端的目前訊息版本關聯。

None

取得不使用 SOAP 版本的封套版本。

Soap11

取得 SOAP 1.1 封套版本。

Soap12

取得 SOAP1.2 封套版本。

方法

Equals(Object)

判斷指定的物件是否等於目前的物件。

(繼承來源 Object)
GetHashCode()

做為預設雜湊函式。

(繼承來源 Object)
GetType()

取得目前執行個體的 Type

(繼承來源 Object)
GetUltimateDestinationActorValues()

取得包含 SOAP 角色之 URI 名稱的字串,此角色與最終目的端的目前訊息版本關聯。

MemberwiseClone()

建立目前 Object 的淺層複製。

(繼承來源 Object)
ToString()

取得表示目前封套版本的字串。

適用於