Message.CreateMessage Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Er erstellt eine Nachricht.
Überlädt
CreateMessage(MessageVersion, FaultCode, String, Object, String) |
Erstellt eine Nachricht, die einen SOAP-Fehler, einen Grund und Details für den Fehler, eine Version und eine Aktion enthält. |
CreateMessage(MessageVersion, FaultCode, String, String) |
Erstellt eine Nachricht, die einen SOAP-Fehler, einen Grund für den Fehler, eine Version und eine Aktion enthält. |
CreateMessage(XmlReader, Int32, MessageVersion) |
Erstellt eine Nachricht mit dem angegebenen Reader, der Aktion und Version. |
CreateMessage(XmlDictionaryReader, Int32, MessageVersion) |
Erstellt eine Nachricht mit dem angegebenen Reader, der Aktion und Version. |
CreateMessage(MessageVersion, String, XmlReader) |
Erstellt eine Nachricht mit dem angegebenen Reader, der Aktion und Version. |
CreateMessage(MessageVersion, String, Object, XmlObjectSerializer) |
Erstellt eine Nachricht mit der angegebenen Version, Aktion, dem Nachrichtentext und Serialisierungsprogramm. |
CreateMessage(MessageVersion, String, BodyWriter) |
Erstellt eine Nachricht mit einem Text, der aus einem Array von Byte besteht. |
CreateMessage(MessageVersion, String, Object) |
Erstellt eine Nachricht mit der angegebenen Version, Aktion und angegebenem Text. |
CreateMessage(MessageVersion, MessageFault, String) |
Erstellt eine Nachricht, die einen SOAP-Fehler, eine Version und eine Aktion enthält. |
CreateMessage(MessageVersion, String, XmlDictionaryReader) |
Erstellt eine Nachricht mit der angegebenen Version, Aktion und angegebenem Text. |
CreateMessage(MessageVersion, String) |
Erstellt eine Nachricht, die eine Version und eine Aktion enthält. |
Beispiele
Das folgende Codebeispiel zeigt einen Client, der die Kanalfactory zum Senden einer Nachricht und zum Lesen der Antwort verwendet.
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.
Verwenden Sie bei der Arbeit mit JSON-Nachrichten die CreateMessage(MessageVersion, String, Object, XmlObjectSerializer)-Methode; die CreateMessage(MessageVersion, String, Object)-Methode funktioniert bei JSON-Nachrichten nicht.
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 Details 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 für die Nachricht zu verwendende SOAP-Version angibt.
- 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
Beschreibt, wie die Nachricht verarbeitet werden soll.
Gibt zurück
Ein Message-Objekt für die erstellte Meldung.
Ausnahmen
version
, fault
, action
, detail
oder faultCode
ist null
.
Hinweise
Diese statische Methode wird verwendet, um eine neue Kopie der Nachricht zu erstellen, die bereit zum Senden ist.
Gilt für:
CreateMessage(MessageVersion, FaultCode, String, String)
- Quelle:
- Message.cs
- Quelle:
- Message.cs
- Quelle:
- Message.cs
Erstellt eine Nachricht, die einen SOAP-Fehler, einen Grund 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::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 für die Nachricht zu verwendende SOAP-Version angibt.
- faultCode
- FaultCode
Ein MessageFault-Objekt, das einen SOAP-Fehler darstellt.
- reason
- String
Der Grund des SOAP-Fehlers.
- action
- String
Beschreibt, wie die Nachricht verarbeitet werden soll.
Gibt zurück
Ein Message-Objekt für die erstellte Meldung.
Ausnahmen
version
, fault
, action
oder faultCode
ist null
.
Hinweise
Diese statische Methode wird verwendet, um eine neue Kopie der Nachricht zu erstellen, die bereit zum Senden 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 Aktion und 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 eines Headers in Byte.
- version
- MessageVersion
Ein MessageVersion-Objekt, das die für die Nachricht zu verwendende SOAP-Version angibt.
Gibt zurück
Ein Message-Objekt für die erstellte Meldung.
Ausnahmen
envelopeReader
oder version
ist null
.
Hinweise
Message übernimmt den Besitz von envelopeReader
.
Diese Methode liest den Umschlag, speichert alle Header im Puffer der Headerauflistung und liest bis zum, jedoch nicht einschließlich dem Body
-Starttag und gibt die Nachricht zurück. Wenn der Methodenaufruf eine Ausnahme auslöst, wird der Reader geschlossen.
Der Text der zurückgegebenen Nachricht kann dann entweder gelesen oder geschrieben werden.
Der Nachrichtentext kann mit den 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 mit WriteBody oder WriteMessage geschrieben werden. Nachdem er einmal geschrieben wurde, kann er nicht gelesen werden.
Durch das Schließen der Nachricht wird der zugrunde liegende Umschlagreader geschlossen.
Gilt für:
CreateMessage(XmlDictionaryReader, Int32, MessageVersion)
- Quelle:
- Message.cs
- Quelle:
- Message.cs
- Quelle:
- Message.cs
Erstellt eine Nachricht mit dem angegebenen Reader, der Aktion und 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 eines Headers in Byte.
- version
- MessageVersion
Ein gültiger MessageVersion-Wert, der die für die Nachricht zu verwendende SOAP-Version angibt.
Gibt zurück
Ein Message-Objekt für die erstellte Meldung.
Ausnahmen
envelopeReader
oder version
ist null
.
Hinweise
Message übernimmt den Besitz von envelopeReader
.
Diese Methode liest den Umschlag, speichert alle Header im Puffer der Headerauflistung und liest bis zum, jedoch nicht einschließlich dem Body
-Starttag und gibt die Nachricht zurück. Wenn der Methodenaufruf eine Ausnahme auslöst, wird der Reader geschlossen.
Der Text der zurückgegebenen Nachricht kann dann entweder gelesen oder geschrieben werden.
Der Nachrichtentext kann mit den 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 mit WriteBody oder WriteMessage geschrieben werden. Nachdem er einmal geschrieben wurde, kann er nicht gelesen werden.
Durch das Schließen der Nachricht wird der zugrunde liegende Umschlagreader 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 Aktion und 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 für die Nachricht zu verwendende SOAP-Version angibt.
- action
- String
Beschreibt, wie die Nachricht verarbeitet werden soll.
Gibt zurück
Ein Message-Objekt für die erstellte Meldung.
Ausnahmen
version
, action
oder body
ist null
.
Hinweise
Diese statische Methode wird verwendet, um eine neue Kopie der Nachricht zu erstellen, die bereit zum Senden 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, dem Nachrichtentext und Serialisierungsprogramm.
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 für die Nachricht zu verwendende SOAP-Version angibt.
- action
- String
Beschreibt, wie die Nachricht verarbeitet werden soll.
- body
- Object
Der Textkörper der Nachricht.
- serializer
- XmlObjectSerializer
Ein XmlObjectSerializer-Objekt, das verwendet wird, um die Meldung zu serialisieren.
Gibt zurück
Ein Message-Objekt für die erstellte Meldung.
Ausnahmen
version
, fault
oder action
ist null
.
Hinweise
Diese statische Methode wird verwendet, um eine neue Kopie der Nachricht zu erstellen, die bereit zum Senden ist.
Verwenden Sie bei der Arbeit mit JSON-Nachrichten die CreateMessage(MessageVersion, String, Object, XmlObjectSerializer)-Methode; die CreateMessage(MessageVersion, String, Object)-Methode funktioniert bei JSON-Nachrichten nicht.
Gilt für:
CreateMessage(MessageVersion, String, BodyWriter)
- Quelle:
- Message.cs
- Quelle:
- Message.cs
- Quelle:
- Message.cs
Erstellt eine Nachricht mit einem Text, der aus einem Array von Byte 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 für die Nachricht zu verwendende SOAP-Version angibt.
- action
- String
Beschreibt, wie die Nachricht verarbeitet werden soll.
- body
- BodyWriter
BodyWriter vom Typ Byte.
Gibt zurück
Ein Message-Objekt für die erstellte Meldung.
Ausnahmen
Version
, action
oder body
ist null
.
Hinweise
Eine leere Nachricht ist nützlich, damit ein Endpunkt eine Warnung ohne eigentlichen Inhalt an einen anderen Endpunkt senden kann.
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 angegebenem Text.
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 für die Nachricht zu verwendende SOAP-Version angibt.
- action
- String
Beschreibt, wie die Nachricht verarbeitet werden soll.
- body
- Object
Der Textkörper der Nachricht.
Gibt zurück
Ein Message-Objekt für die erstellte Meldung.
Ausnahmen
version
, action
oder body
ist null
.
Hinweise
Diese statische Methode wird verwendet, um eine neue Kopie der Nachricht zu erstellen, die bereit zum Senden ist.
Verwenden Sie bei der Arbeit mit JSON-Nachrichten die CreateMessage(MessageVersion, String, Object, XmlObjectSerializer)-Methode; die CreateMessage(MessageVersion, String, Object)-Methode funktioniert bei JSON-Nachrichten nicht.
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 für die Nachricht zu verwendende SOAP-Version angibt.
- fault
- MessageFault
Ein MessageFault-Objekt, das einen SOAP-Fehler darstellt.
- action
- String
Beschreibt, wie die Nachricht verarbeitet werden soll.
Gibt zurück
Ein Message-Objekt für die erstellte Meldung.
Ausnahmen
Version
, fault
oder action
ist null
.
Hinweise
Diese statische Methode wird verwendet, um eine neue Kopie der Nachricht zu erstellen, die bereit zum Senden 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 angegebenem Text.
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 für die Nachricht zu verwendende SOAP-Version angibt.
- action
- String
Beschreibt, wie die Nachricht verarbeitet werden soll.
- body
- XmlDictionaryReader
Der Textkörper der Nachricht.
Gibt zurück
Ein Message-Objekt für die erstellte Meldung.
Ausnahmen
version
, action
oder body
ist null
.
Hinweise
Diese statische Methode wird verwendet, um eine neue Kopie der Nachricht zu erstellen, die bereit zum Senden 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 für die Nachricht zu verwendende SOAP-Version angibt.
- action
- String
Beschreibt, wie die Nachricht verarbeitet werden soll.
Gibt zurück
Ein Message-Objekt für die erstellte Meldung.
Ausnahmen
version
oder action
ist null
.
Hinweise
Diese statische Methode wird verwendet, um eine neue Kopie der Nachricht zu erstellen, die bereit zum Senden ist.