Message.CreateMessage Methode

Definition

Erstellt eine Nachricht.

Überlädt

Name Beschreibung
CreateMessage(MessageVersion, FaultCode, String, Object, String)

Erstellt eine Nachricht, die einen SOAP-Fehler, einen Grund und das Detail für den Fehler, eine Version und eine Aktion enthält.

CreateMessage(MessageVersion, String, Object, XmlObjectSerializer)

Erstellt eine Nachricht mit der angegebenen Version, Aktion, Nachrichtentext und Serialisierung.

CreateMessage(MessageVersion, FaultCode, String, String)

Erstellt eine Nachricht, die einen SOAP-Fehler enthält, den Grund für den Fehler, eine Version und eine Aktion.

CreateMessage(XmlDictionaryReader, Int32, MessageVersion)

Erstellt eine Nachricht mit dem angegebenen Reader, der angegebenen Aktion und der angegebenen Version.

CreateMessage(MessageVersion, String, XmlReader)

Erstellt eine Nachricht mit dem angegebenen Reader, der angegebenen Aktion und der angegebenen Version.

CreateMessage(XmlReader, Int32, MessageVersion)

Erstellt eine Nachricht mit dem angegebenen Reader, der angegebenen Aktion und der angegebenen Version.

CreateMessage(MessageVersion, String, BodyWriter)

Erstellt eine Nachricht mit einem Textkörper, der aus einem Bytearray besteht.

CreateMessage(MessageVersion, String, Object)

Erstellt eine Nachricht mit der angegebenen Version, Aktion und Textkörper.

CreateMessage(MessageVersion, MessageFault, String)

Erstellt eine Nachricht, die einen SOAP-Fehler, eine Version und eine Aktion enthält.

CreateMessage(MessageVersion, String)

Erstellt eine Nachricht, die eine Version und eine Aktion enthält.

CreateMessage(MessageVersion, String, XmlDictionaryReader)

Erstellt eine Nachricht mit der angegebenen Version, Aktion und Textkörper.

Beispiele

Das folgende Codebeispiel zeigt einen Client, der die Kanalfactory verwendet, um eine Nachricht zu senden und die Antwort zu lesen.

using System;
using System.Collections.Generic;
using System.Text;
using System.ServiceModel;
using System.ServiceModel.Channels;
using System.Runtime.Serialization;

namespace ConsoleApplication1
{
    class client
    {

        static void RunClient()
        {
            //Step1: create a binding with just HTTP
            CustomBinding binding = new CustomBinding();
            binding.Elements.Add(new HttpTransportBindingElement());
            //Step2: use the binding to build the channel factory
            IChannelFactory<IRequestChannel> factory =
            binding.BuildChannelFactory<IRequestChannel>(
                             new BindingParameterCollection());
            //open the channel factory
            factory.Open();
            //Step3: use the channel factory to create a channel
            IRequestChannel channel = factory.CreateChannel(
               new EndpointAddress("http://localhost:8080/channelapp"));
            channel.Open();
            //Step4: create a message
            Message requestmessage = Message.CreateMessage(
                MessageVersion.Soap12WSAddressing10,
                "http://contoso.com/someaction",
                 "This is the body data");
            //send message
            Message replymessage = channel.Request(requestmessage);
            Console.WriteLine("Reply message received");
            Console.WriteLine("Reply action: {0}",
                                  replymessage.Headers.Action);
            string data = replymessage.GetBody<string>();
            Console.WriteLine("Reply content: {0}", data);
            //Step5: don't forget to close the message
            requestmessage.Close();
            replymessage.Close();
            //don't forget to close the channel
            channel.Close();
            //don't forget to close the factory
            factory.Close();
        }
        public static void Main()
        {
            Console.WriteLine("Press [ENTER] when service is ready");
            Console.ReadLine();
            RunClient();
            Console.WriteLine("Press [ENTER] to exit");
            Console.ReadLine();
        }
    }
}


Imports System.Collections.Generic
Imports System.Text
Imports System.ServiceModel
Imports System.ServiceModel.Channels
Imports System.Runtime.Serialization

Namespace ConsoleApplication1
    Friend Class client


        Private Shared Sub RunClient()
            'Step1: create a binding with just HTTP
            Dim binding As New CustomBinding()
            binding.Elements.Add(New HttpTransportBindingElement())
            'Step2: use the binding to build the channel factory
            Dim factory As IChannelFactory(Of IRequestChannel) = binding.BuildChannelFactory(Of IRequestChannel)(New BindingParameterCollection())
            'open the channel factory
            factory.Open()
            'Step3: use the channel factory to create a channel
            Dim channel As IRequestChannel = factory.CreateChannel(New EndpointAddress("http://localhost:8080/channelapp"))
            channel.Open()
            'Step4: create a message
            Dim requestmessage As Message = Message.CreateMessage(MessageVersion.Soap12WSAddressing10, "http://contoso.com/someaction", "This is the body data")
            'send message
            Dim replymessage As Message = channel.Request(requestmessage)
            Console.WriteLine("Reply message received")
            Console.WriteLine("Reply action: {0}", replymessage.Headers.Action)
            Dim data = replymessage.GetBody(Of String)()
            Console.WriteLine("Reply content: {0}", data)
            'Step5: don't forget to close the message
            requestmessage.Close()
            replymessage.Close()
            'don't forget to close the channel
            channel.Close()
            'don't forget to close the factory
            factory.Close()
        End Sub
        Public Shared Sub Main()
            Console.WriteLine("Press [ENTER] when service is ready")
            Console.ReadLine()
            RunClient()
            Console.WriteLine("Press [ENTER] to exit")
            Console.ReadLine()
        End Sub
    End Class
End Namespace

Hinweise

Diese Methode wird verwendet, um eine neue Kopie einer Nachricht zu erstellen, die zum Senden bereit ist.

Beim Arbeiten mit JSON-Nachrichten wird die CreateMessage(MessageVersion, String, Object, XmlObjectSerializer) Methode CreateMessage(MessageVersion, String, Object) nicht mit JSON-Nachrichten verwendet.

CreateMessage(MessageVersion, FaultCode, String, Object, String)

Quelle:
Message.cs
Quelle:
Message.cs
Quelle:
Message.cs

Erstellt eine Nachricht, die einen SOAP-Fehler, einen Grund und das Detail für den Fehler, eine Version und eine Aktion enthält.

public:
 static System::ServiceModel::Channels::Message ^ CreateMessage(System::ServiceModel::Channels::MessageVersion ^ version, System::ServiceModel::FaultCode ^ faultCode, System::String ^ reason, System::Object ^ detail, System::String ^ action);
public static System.ServiceModel.Channels.Message CreateMessage(System.ServiceModel.Channels.MessageVersion version, System.ServiceModel.FaultCode faultCode, string reason, object detail, string action);
static member CreateMessage : System.ServiceModel.Channels.MessageVersion * System.ServiceModel.FaultCode * string * obj * string -> System.ServiceModel.Channels.Message
Public Shared Function CreateMessage (version As MessageVersion, faultCode As FaultCode, reason As String, detail As Object, action As String) As Message

Parameter

version
MessageVersion

Ein MessageVersion Objekt, das die SOAP-Version angibt, die für die Nachricht verwendet werden soll.

faultCode
FaultCode

Ein MessageFault Objekt, das einen SOAP-Fehler darstellt.

reason
String

Der Grund des SOAP-Fehlers.

detail
Object

Die Details des SOAP-Fehlers.

action
String

Eine Beschreibung, wie die Nachricht verarbeitet werden soll.

Gibt zurück

Ein Message Objekt für die erstellte Nachricht.

Ausnahmen

version, fault, action, oder detailfaultCode ist .null

Hinweise

Diese statische Methode wird verwendet, um eine neue Kopie der Nachricht zu erstellen, die zum Senden bereit ist.

Gilt für:

CreateMessage(MessageVersion, String, Object, XmlObjectSerializer)

Quelle:
Message.cs
Quelle:
Message.cs
Quelle:
Message.cs

Erstellt eine Nachricht mit der angegebenen Version, Aktion, Nachrichtentext und Serialisierung.

public:
 static System::ServiceModel::Channels::Message ^ CreateMessage(System::ServiceModel::Channels::MessageVersion ^ version, System::String ^ action, System::Object ^ body, System::Runtime::Serialization::XmlObjectSerializer ^ serializer);
public static System.ServiceModel.Channels.Message CreateMessage(System.ServiceModel.Channels.MessageVersion version, string action, object body, System.Runtime.Serialization.XmlObjectSerializer serializer);
static member CreateMessage : System.ServiceModel.Channels.MessageVersion * string * obj * System.Runtime.Serialization.XmlObjectSerializer -> System.ServiceModel.Channels.Message
Public Shared Function CreateMessage (version As MessageVersion, action As String, body As Object, serializer As XmlObjectSerializer) As Message

Parameter

version
MessageVersion

Ein MessageVersion Objekt, das die SOAP-Version angibt, die für die Nachricht verwendet werden soll.

action
String

Eine Beschreibung, wie die Nachricht verarbeitet werden soll.

body
Object

Der Text der Nachricht.

serializer
XmlObjectSerializer

Ein XmlObjectSerializer Objekt, das zum Serialisieren der Nachricht verwendet wird.

Gibt zurück

Ein Message Objekt für die erstellte Nachricht.

Ausnahmen

version, fault oder action ist .null

Hinweise

Diese statische Methode wird verwendet, um eine neue Kopie der Nachricht zu erstellen, die zum Senden bereit ist.

Beim Arbeiten mit JSON-Nachrichten wird die CreateMessage(MessageVersion, String, Object, XmlObjectSerializer) Methode CreateMessage(MessageVersion, String, Object) nicht mit JSON-Nachrichten verwendet.

Gilt für:

CreateMessage(MessageVersion, FaultCode, String, String)

Quelle:
Message.cs
Quelle:
Message.cs
Quelle:
Message.cs

Erstellt eine Nachricht, die einen SOAP-Fehler enthält, den Grund für den Fehler, eine Version und eine Aktion.

public:
 static System::ServiceModel::Channels::Message ^ CreateMessage(System::ServiceModel::Channels::MessageVersion ^ version, System::ServiceModel::FaultCode ^ faultCode, System::String ^ reason, System::String ^ action);
public static System.ServiceModel.Channels.Message CreateMessage(System.ServiceModel.Channels.MessageVersion version, System.ServiceModel.FaultCode faultCode, string reason, string action);
static member CreateMessage : System.ServiceModel.Channels.MessageVersion * System.ServiceModel.FaultCode * string * string -> System.ServiceModel.Channels.Message
Public Shared Function CreateMessage (version As MessageVersion, faultCode As FaultCode, reason As String, action As String) As Message

Parameter

version
MessageVersion

Ein MessageVersion Objekt, das die SOAP-Version angibt, die für die Nachricht verwendet werden soll.

faultCode
FaultCode

Ein MessageFault Objekt, das einen SOAP-Fehler darstellt.

reason
String

Der Grund des SOAP-Fehlers.

action
String

Eine Beschreibung, wie die Nachricht verarbeitet werden soll.

Gibt zurück

Ein Message Objekt für die erstellte Nachricht.

Ausnahmen

version, faultoder actionfaultCode ist .null

Hinweise

Diese statische Methode wird verwendet, um eine neue Kopie der Nachricht zu erstellen, die zum Senden bereit ist.

Gilt für:

CreateMessage(XmlDictionaryReader, Int32, MessageVersion)

Quelle:
Message.cs
Quelle:
Message.cs
Quelle:
Message.cs

Erstellt eine Nachricht mit dem angegebenen Reader, der angegebenen Aktion und der angegebenen Version.

public:
 static System::ServiceModel::Channels::Message ^ CreateMessage(System::Xml::XmlDictionaryReader ^ envelopeReader, int maxSizeOfHeaders, System::ServiceModel::Channels::MessageVersion ^ version);
public static System.ServiceModel.Channels.Message CreateMessage(System.Xml.XmlDictionaryReader envelopeReader, int maxSizeOfHeaders, System.ServiceModel.Channels.MessageVersion version);
static member CreateMessage : System.Xml.XmlDictionaryReader * int * System.ServiceModel.Channels.MessageVersion -> System.ServiceModel.Channels.Message
Public Shared Function CreateMessage (envelopeReader As XmlDictionaryReader, maxSizeOfHeaders As Integer, version As MessageVersion) As Message

Parameter

envelopeReader
XmlDictionaryReader

Das XmlDictionaryReader Objekt, das zum Lesen der SOAP-Nachricht verwendet werden soll.

maxSizeOfHeaders
Int32

Die maximale Größe in Byte eines Headers.

version
MessageVersion

Ein gültiger MessageVersion Wert, der die SOAP-Version angibt, die für die Nachricht verwendet werden soll.

Gibt zurück

Ein Message Objekt für die erstellte Nachricht.

Ausnahmen

envelopeReader oder version ist null.

Hinweise

Message übernimmt den Besitz von envelopeReader.

Diese Methode liest den Umschlag, puffert alle Kopfzeilen in der Kopfzeilenauflistung und liest bis zum Starttag vor, ohne das Body Starttag einzuschließen und gibt die Nachricht zurück. Wenn der Methodenaufruf eine Ausnahme auslöst, wird der Leser geschlossen.

Der Textkörper der zurückgegebenen Nachricht kann dann entweder gelesen oder geschrieben werden.

Der Nachrichtentext kann mithilfe der GetBody Methoden für die zurückgegebene Nachricht gelesen werden. Das zurückgegebene Objekt kapselt alle untergeordneten Elemente innerhalb des Body Elements. Der Nachrichtentext kann mithilfe WriteBody oder WriteMessage. Nach dem Schreiben kann sie nicht mehr gelesen werden.

Wenn Sie die Nachricht schließen, wird der zugrunde liegende Umschlagleser geschlossen.

Gilt für:

CreateMessage(MessageVersion, String, XmlReader)

Quelle:
Message.cs
Quelle:
Message.cs
Quelle:
Message.cs

Erstellt eine Nachricht mit dem angegebenen Reader, der angegebenen Aktion und der angegebenen Version.

public:
 static System::ServiceModel::Channels::Message ^ CreateMessage(System::ServiceModel::Channels::MessageVersion ^ version, System::String ^ action, System::Xml::XmlReader ^ body);
public static System.ServiceModel.Channels.Message CreateMessage(System.ServiceModel.Channels.MessageVersion version, string action, System.Xml.XmlReader body);
static member CreateMessage : System.ServiceModel.Channels.MessageVersion * string * System.Xml.XmlReader -> System.ServiceModel.Channels.Message
Public Shared Function CreateMessage (version As MessageVersion, action As String, body As XmlReader) As Message

Parameter

version
MessageVersion

Ein MessageVersion Objekt, das die SOAP-Version angibt, die für die Nachricht verwendet werden soll.

action
String

Eine Beschreibung, wie die Nachricht verarbeitet werden soll.

body
XmlReader

Das XmlReader Objekt, das zum Lesen der SOAP-Nachricht verwendet werden soll.

Gibt zurück

Ein Message Objekt für die erstellte Nachricht.

Ausnahmen

version, action oder body ist .null

Hinweise

Diese statische Methode wird verwendet, um eine neue Kopie der Nachricht zu erstellen, die zum Senden bereit ist.

Gilt für:

CreateMessage(XmlReader, Int32, MessageVersion)

Quelle:
Message.cs
Quelle:
Message.cs
Quelle:
Message.cs

Erstellt eine Nachricht mit dem angegebenen Reader, der angegebenen Aktion und der angegebenen Version.

public:
 static System::ServiceModel::Channels::Message ^ CreateMessage(System::Xml::XmlReader ^ envelopeReader, int maxSizeOfHeaders, System::ServiceModel::Channels::MessageVersion ^ version);
public static System.ServiceModel.Channels.Message CreateMessage(System.Xml.XmlReader envelopeReader, int maxSizeOfHeaders, System.ServiceModel.Channels.MessageVersion version);
static member CreateMessage : System.Xml.XmlReader * int * System.ServiceModel.Channels.MessageVersion -> System.ServiceModel.Channels.Message
Public Shared Function CreateMessage (envelopeReader As XmlReader, maxSizeOfHeaders As Integer, version As MessageVersion) As Message

Parameter

envelopeReader
XmlReader

Das XmlReader Objekt, das zum Lesen der SOAP-Nachricht verwendet werden soll.

maxSizeOfHeaders
Int32

Die maximale Größe in Byte eines Headers.

version
MessageVersion

Ein MessageVersion Objekt, das die SOAP-Version angibt, die für die Nachricht verwendet werden soll.

Gibt zurück

Ein Message Objekt für die erstellte Nachricht.

Ausnahmen

envelopeReader oder version ist null.

Hinweise

Message übernimmt den Besitz von envelopeReader.

Diese Methode liest den Umschlag, puffert alle Kopfzeilen in der Kopfzeilenauflistung und liest bis zum Starttag vor, ohne das Body Starttag einzuschließen und gibt die Nachricht zurück. Wenn der Methodenaufruf eine Ausnahme auslöst, wird der Leser geschlossen.

Der Textkörper der zurückgegebenen Nachricht kann dann entweder gelesen oder geschrieben werden.

Der Nachrichtentext kann mithilfe der GetBody Methoden für die zurückgegebene Nachricht gelesen werden. Das zurückgegebene Objekt kapselt alle untergeordneten Elemente innerhalb des Body Elements. Der Nachrichtentext kann mithilfe WriteBody oder WriteMessage. Nach dem Schreiben kann sie nicht mehr gelesen werden.

Wenn Sie die Nachricht schließen, wird der zugrunde liegende Umschlagleser geschlossen.

Gilt für:

CreateMessage(MessageVersion, String, BodyWriter)

Quelle:
Message.cs
Quelle:
Message.cs
Quelle:
Message.cs

Erstellt eine Nachricht mit einem Textkörper, der aus einem Bytearray besteht.

public:
 static System::ServiceModel::Channels::Message ^ CreateMessage(System::ServiceModel::Channels::MessageVersion ^ version, System::String ^ action, System::ServiceModel::Channels::BodyWriter ^ body);
public static System.ServiceModel.Channels.Message CreateMessage(System.ServiceModel.Channels.MessageVersion version, string action, System.ServiceModel.Channels.BodyWriter body);
static member CreateMessage : System.ServiceModel.Channels.MessageVersion * string * System.ServiceModel.Channels.BodyWriter -> System.ServiceModel.Channels.Message
Public Shared Function CreateMessage (version As MessageVersion, action As String, body As BodyWriter) As Message

Parameter

version
MessageVersion

Ein MessageVersion Objekt, das die SOAP-Version angibt, die für die Nachricht verwendet werden soll.

action
String

Eine Beschreibung, wie die Nachricht verarbeitet werden soll.

body
BodyWriter

Ein BodyWriter Bytetyp.

Gibt zurück

Ein Message Objekt für die erstellte Nachricht.

Ausnahmen

Version, action oder body ist .null

Hinweise

Eine leere Nachricht ist nützlich für einen Endpunkt, um eine Warnung ohne tatsächlichen Inhalt an einen anderen Endpunkt zu senden.

Gilt für:

CreateMessage(MessageVersion, String, Object)

Quelle:
Message.cs
Quelle:
Message.cs
Quelle:
Message.cs

Erstellt eine Nachricht mit der angegebenen Version, Aktion und Textkörper.

public:
 static System::ServiceModel::Channels::Message ^ CreateMessage(System::ServiceModel::Channels::MessageVersion ^ version, System::String ^ action, System::Object ^ body);
public static System.ServiceModel.Channels.Message CreateMessage(System.ServiceModel.Channels.MessageVersion version, string action, object body);
static member CreateMessage : System.ServiceModel.Channels.MessageVersion * string * obj -> System.ServiceModel.Channels.Message
Public Shared Function CreateMessage (version As MessageVersion, action As String, body As Object) As Message

Parameter

version
MessageVersion

Ein MessageVersion Objekt, das die SOAP-Version angibt, die für die Nachricht verwendet werden soll.

action
String

Eine Beschreibung, wie die Nachricht verarbeitet werden soll.

body
Object

Der Text der Nachricht.

Gibt zurück

Ein Message Objekt für die erstellte Nachricht.

Ausnahmen

version, action oder body ist .null

Hinweise

Diese statische Methode wird verwendet, um eine neue Kopie der Nachricht zu erstellen, die zum Senden bereit ist.

Beim Arbeiten mit JSON-Nachrichten wird die CreateMessage(MessageVersion, String, Object, XmlObjectSerializer) Methode CreateMessage(MessageVersion, String, Object) nicht mit JSON-Nachrichten verwendet.

Gilt für:

CreateMessage(MessageVersion, MessageFault, String)

Quelle:
Message.cs
Quelle:
Message.cs
Quelle:
Message.cs

Erstellt eine Nachricht, die einen SOAP-Fehler, eine Version und eine Aktion enthält.

public:
 static System::ServiceModel::Channels::Message ^ CreateMessage(System::ServiceModel::Channels::MessageVersion ^ version, System::ServiceModel::Channels::MessageFault ^ fault, System::String ^ action);
public static System.ServiceModel.Channels.Message CreateMessage(System.ServiceModel.Channels.MessageVersion version, System.ServiceModel.Channels.MessageFault fault, string action);
static member CreateMessage : System.ServiceModel.Channels.MessageVersion * System.ServiceModel.Channels.MessageFault * string -> System.ServiceModel.Channels.Message
Public Shared Function CreateMessage (version As MessageVersion, fault As MessageFault, action As String) As Message

Parameter

version
MessageVersion

Ein MessageVersion Objekt, das die SOAP-Version angibt, die für die Nachricht verwendet werden soll.

fault
MessageFault

Ein MessageFault Objekt, das einen SOAP-Fehler darstellt.

action
String

Eine Beschreibung, wie die Nachricht verarbeitet werden soll.

Gibt zurück

Ein Message Objekt für die erstellte Nachricht.

Ausnahmen

Version, fault oder action ist .null

Hinweise

Diese statische Methode wird verwendet, um eine neue Kopie der Nachricht zu erstellen, die zum Senden bereit ist.

Gilt für:

CreateMessage(MessageVersion, String)

Quelle:
Message.cs
Quelle:
Message.cs
Quelle:
Message.cs

Erstellt eine Nachricht, die eine Version und eine Aktion enthält.

public:
 static System::ServiceModel::Channels::Message ^ CreateMessage(System::ServiceModel::Channels::MessageVersion ^ version, System::String ^ action);
public static System.ServiceModel.Channels.Message CreateMessage(System.ServiceModel.Channels.MessageVersion version, string action);
static member CreateMessage : System.ServiceModel.Channels.MessageVersion * string -> System.ServiceModel.Channels.Message
Public Shared Function CreateMessage (version As MessageVersion, action As String) As Message

Parameter

version
MessageVersion

Ein MessageVersion Objekt, das die SOAP-Version angibt, die für die Nachricht verwendet werden soll.

action
String

Eine Beschreibung, wie die Nachricht verarbeitet werden soll.

Gibt zurück

Ein Message Objekt für die erstellte Nachricht.

Ausnahmen

version oder action ist null.

Hinweise

Diese statische Methode wird verwendet, um eine neue Kopie der Nachricht zu erstellen, die zum Senden bereit ist.

Gilt für:

CreateMessage(MessageVersion, String, XmlDictionaryReader)

Quelle:
Message.cs
Quelle:
Message.cs
Quelle:
Message.cs

Erstellt eine Nachricht mit der angegebenen Version, Aktion und Textkörper.

public:
 static System::ServiceModel::Channels::Message ^ CreateMessage(System::ServiceModel::Channels::MessageVersion ^ version, System::String ^ action, System::Xml::XmlDictionaryReader ^ body);
public static System.ServiceModel.Channels.Message CreateMessage(System.ServiceModel.Channels.MessageVersion version, string action, System.Xml.XmlDictionaryReader body);
static member CreateMessage : System.ServiceModel.Channels.MessageVersion * string * System.Xml.XmlDictionaryReader -> System.ServiceModel.Channels.Message
Public Shared Function CreateMessage (version As MessageVersion, action As String, body As XmlDictionaryReader) As Message

Parameter

version
MessageVersion

Ein MessageVersion Objekt, das die SOAP-Version angibt, die für die Nachricht verwendet werden soll.

action
String

Eine Beschreibung, wie die Nachricht verarbeitet werden soll.

body
XmlDictionaryReader

Der Text der Nachricht.

Gibt zurück

Ein Message Objekt für die erstellte Nachricht.

Ausnahmen

version, action oder body ist .null

Hinweise

Diese statische Methode wird verwendet, um eine neue Kopie der Nachricht zu erstellen, die zum Senden bereit ist.

Gilt für: