Message.CreateMessage Methode

Definitie

Hiermee maakt u een bericht.

Overloads

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

Hiermee maakt u een bericht met een SOAP-fout, een reden en de details voor de fout, een versie en een actie.

CreateMessage(MessageVersion, String, Object, XmlObjectSerializer)

Hiermee maakt u een bericht met de opgegeven versie, actie, berichttekst en serialisatiefunctie.

CreateMessage(MessageVersion, FaultCode, String, String)

Hiermee maakt u een bericht met een SOAP-fout, de reden voor de fout, een versie en een actie.

CreateMessage(XmlDictionaryReader, Int32, MessageVersion)

Hiermee maakt u een bericht met behulp van de opgegeven lezer, actie en versie.

CreateMessage(MessageVersion, String, XmlReader)

Hiermee maakt u een bericht met behulp van de opgegeven lezer, actie en versie.

CreateMessage(XmlReader, Int32, MessageVersion)

Hiermee maakt u een bericht met behulp van de opgegeven lezer, actie en versie.

CreateMessage(MessageVersion, String, BodyWriter)

Hiermee maakt u een bericht met een hoofdtekst die bestaat uit een matrix van bytes.

CreateMessage(MessageVersion, String, Object)

Hiermee maakt u een bericht met de opgegeven versie, actie en hoofdtekst.

CreateMessage(MessageVersion, MessageFault, String)

Hiermee maakt u een bericht met een SOAP-fout, een versie en een actie.

CreateMessage(MessageVersion, String)

Hiermee maakt u een bericht met een versie en een actie.

CreateMessage(MessageVersion, String, XmlDictionaryReader)

Hiermee maakt u een bericht met de opgegeven versie, actie en hoofdtekst.

Voorbeelden

In het volgende codevoorbeeld ziet u een client die gebruikmaakt van de kanaalfactory om een bericht te verzenden en het antwoord te lezen.

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

Opmerkingen

Deze methode wordt gebruikt om een nieuwe kopie van een bericht te maken dat gereed is voor verzending.

Wanneer u met JSON-berichten CreateMessage(MessageVersion, String, Object, XmlObjectSerializer) werkt, werkt de CreateMessage(MessageVersion, String, Object) methode niet met JSON-berichten.

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

Bron:
Message.cs
Bron:
Message.cs
Bron:
Message.cs

Hiermee maakt u een bericht met een SOAP-fout, een reden en de details voor de fout, een versie en een actie.

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

Parameters

version
MessageVersion

Een MessageVersion object dat de SOAP-versie aangeeft die voor het bericht moet worden gebruikt.

faultCode
FaultCode

Een MessageFault object dat een SOAP-fout vertegenwoordigt.

reason
String

De reden van de SOAP-fout.

detail
Object

De details van de SOAP-fout.

action
String

Een beschrijving van hoe het bericht moet worden verwerkt.

Retouren

Een Message object voor het bericht dat is gemaakt.

Uitzonderingen

version, fault, actionof detailfaultCode is null.

Opmerkingen

Deze statische methode wordt gebruikt om een nieuwe kopie van het bericht te maken dat gereed is voor verzending.

Van toepassing op

CreateMessage(MessageVersion, String, Object, XmlObjectSerializer)

Bron:
Message.cs
Bron:
Message.cs
Bron:
Message.cs

Hiermee maakt u een bericht met de opgegeven versie, actie, berichttekst en serialisatiefunctie.

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

Parameters

version
MessageVersion

Een MessageVersion object dat de SOAP-versie aangeeft die voor het bericht moet worden gebruikt.

action
String

Een beschrijving van hoe het bericht moet worden verwerkt.

body
Object

De hoofdtekst van het bericht.

serializer
XmlObjectSerializer

Een XmlObjectSerializer object dat wordt gebruikt om het bericht te serialiseren.

Retouren

Een Message object voor het bericht dat is gemaakt.

Uitzonderingen

versionof faultaction is null.

Opmerkingen

Deze statische methode wordt gebruikt om een nieuwe kopie van het bericht te maken dat gereed is voor verzending.

Wanneer u met JSON-berichten CreateMessage(MessageVersion, String, Object, XmlObjectSerializer) werkt, werkt de CreateMessage(MessageVersion, String, Object) methode niet met JSON-berichten.

Van toepassing op

CreateMessage(MessageVersion, FaultCode, String, String)

Bron:
Message.cs
Bron:
Message.cs
Bron:
Message.cs

Hiermee maakt u een bericht met een SOAP-fout, de reden voor de fout, een versie en een actie.

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

Parameters

version
MessageVersion

Een MessageVersion object dat de SOAP-versie aangeeft die voor het bericht moet worden gebruikt.

faultCode
FaultCode

Een MessageFault object dat een SOAP-fout vertegenwoordigt.

reason
String

De reden van de SOAP-fout.

action
String

Een beschrijving van hoe het bericht moet worden verwerkt.

Retouren

Een Message object voor het bericht dat is gemaakt.

Uitzonderingen

version, faultof actionfaultCode is null.

Opmerkingen

Deze statische methode wordt gebruikt om een nieuwe kopie van het bericht te maken dat gereed is voor verzending.

Van toepassing op

CreateMessage(XmlDictionaryReader, Int32, MessageVersion)

Bron:
Message.cs
Bron:
Message.cs
Bron:
Message.cs

Hiermee maakt u een bericht met behulp van de opgegeven lezer, actie en versie.

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

Parameters

envelopeReader
XmlDictionaryReader

Het XmlDictionaryReader object dat moet worden gebruikt voor het lezen van het SOAP-bericht.

maxSizeOfHeaders
Int32

De maximale grootte in bytes van een header.

version
MessageVersion

Een geldige MessageVersion waarde die de SOAP-versie aangeeft die moet worden gebruikt voor het bericht.

Retouren

Een Message object voor het bericht dat is gemaakt.

Uitzonderingen

envelopeReader of version is null.

Opmerkingen

Message neemt het eigendom van envelopeReader.

Deze methode leest de envelop, buffert alle kopteksten in de headerverzameling en leest maximaal, maar niet inclusief de Body starttag, en retourneert het bericht. Als de methodeaanroep een uitzondering genereert, wordt de lezer gesloten.

De hoofdtekst van het geretourneerde bericht kan vervolgens worden gelezen of geschreven.

De hoofdtekst van het bericht kan worden gelezen met behulp van de GetBody methoden op het geretourneerde bericht. Het geretourneerde object bevat alle onderliggende elementen in het Body element. De hoofdtekst van het bericht kan worden geschreven met of WriteBodyWriteMessage. Zodra het is geschreven, kan deze niet worden gelezen.

Als u het bericht sluit, wordt de onderliggende enveloplezer gesloten.

Van toepassing op

CreateMessage(MessageVersion, String, XmlReader)

Bron:
Message.cs
Bron:
Message.cs
Bron:
Message.cs

Hiermee maakt u een bericht met behulp van de opgegeven lezer, actie en versie.

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

Parameters

version
MessageVersion

Een MessageVersion object dat de SOAP-versie aangeeft die voor het bericht moet worden gebruikt.

action
String

Een beschrijving van hoe het bericht moet worden verwerkt.

body
XmlReader

Het XmlReader object dat moet worden gebruikt voor het lezen van het SOAP-bericht.

Retouren

Een Message object voor het bericht dat is gemaakt.

Uitzonderingen

versionof actionbody is null.

Opmerkingen

Deze statische methode wordt gebruikt om een nieuwe kopie van het bericht te maken dat gereed is voor verzending.

Van toepassing op

CreateMessage(XmlReader, Int32, MessageVersion)

Bron:
Message.cs
Bron:
Message.cs
Bron:
Message.cs

Hiermee maakt u een bericht met behulp van de opgegeven lezer, actie en versie.

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

Parameters

envelopeReader
XmlReader

Het XmlReader object dat moet worden gebruikt voor het lezen van het SOAP-bericht.

maxSizeOfHeaders
Int32

De maximale grootte in bytes van een header.

version
MessageVersion

Een MessageVersion object dat de SOAP-versie aangeeft die voor het bericht moet worden gebruikt.

Retouren

Een Message object voor het bericht dat is gemaakt.

Uitzonderingen

envelopeReader of version is null.

Opmerkingen

Message neemt het eigendom van envelopeReader.

Deze methode leest de envelop, buffert alle kopteksten in de headerverzameling en leest maximaal, maar niet inclusief de Body starttag, en retourneert het bericht. Als de methodeaanroep een uitzondering genereert, wordt de lezer gesloten.

De hoofdtekst van het geretourneerde bericht kan vervolgens worden gelezen of geschreven.

De hoofdtekst van het bericht kan worden gelezen met behulp van de GetBody methoden op het geretourneerde bericht. Het geretourneerde object bevat alle onderliggende elementen in het Body element. De hoofdtekst van het bericht kan worden geschreven met of WriteBodyWriteMessage. Zodra het is geschreven, kan deze niet worden gelezen.

Als u het bericht sluit, wordt de onderliggende enveloplezer gesloten.

Van toepassing op

CreateMessage(MessageVersion, String, BodyWriter)

Bron:
Message.cs
Bron:
Message.cs
Bron:
Message.cs

Hiermee maakt u een bericht met een hoofdtekst die bestaat uit een matrix van bytes.

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

Parameters

version
MessageVersion

Een MessageVersion object dat de SOAP-versie aangeeft die voor het bericht moet worden gebruikt.

action
String

Een beschrijving van hoe het bericht moet worden verwerkt.

body
BodyWriter

Een BodyWriter byte van het type.

Retouren

Een Message object voor het bericht dat is gemaakt.

Uitzonderingen

Versionof actionbody is null.

Opmerkingen

Een leeg bericht is handig voor een eindpunt om een waarschuwing naar een ander eindpunt te verzenden zonder werkelijke inhoud.

Van toepassing op

CreateMessage(MessageVersion, String, Object)

Bron:
Message.cs
Bron:
Message.cs
Bron:
Message.cs

Hiermee maakt u een bericht met de opgegeven versie, actie en hoofdtekst.

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

Parameters

version
MessageVersion

Een MessageVersion object dat de SOAP-versie aangeeft die voor het bericht moet worden gebruikt.

action
String

Een beschrijving van hoe het bericht moet worden verwerkt.

body
Object

De hoofdtekst van het bericht.

Retouren

Een Message object voor het bericht dat is gemaakt.

Uitzonderingen

versionof actionbody is null.

Opmerkingen

Deze statische methode wordt gebruikt om een nieuwe kopie van het bericht te maken dat gereed is voor verzending.

Wanneer u met JSON-berichten CreateMessage(MessageVersion, String, Object, XmlObjectSerializer) werkt, werkt de CreateMessage(MessageVersion, String, Object) methode niet met JSON-berichten.

Van toepassing op

CreateMessage(MessageVersion, MessageFault, String)

Bron:
Message.cs
Bron:
Message.cs
Bron:
Message.cs

Hiermee maakt u een bericht met een SOAP-fout, een versie en een actie.

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

Parameters

version
MessageVersion

Een MessageVersion object dat de SOAP-versie aangeeft die voor het bericht moet worden gebruikt.

fault
MessageFault

Een MessageFault object dat een SOAP-fout vertegenwoordigt.

action
String

Een beschrijving van hoe het bericht moet worden verwerkt.

Retouren

Een Message object voor het bericht dat is gemaakt.

Uitzonderingen

Versionof faultaction is null.

Opmerkingen

Deze statische methode wordt gebruikt om een nieuwe kopie van het bericht te maken dat gereed is voor verzending.

Van toepassing op

CreateMessage(MessageVersion, String)

Bron:
Message.cs
Bron:
Message.cs
Bron:
Message.cs

Hiermee maakt u een bericht met een versie en een actie.

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

Parameters

version
MessageVersion

Een MessageVersion object dat de SOAP-versie aangeeft die voor het bericht moet worden gebruikt.

action
String

Een beschrijving van hoe het bericht moet worden verwerkt.

Retouren

Een Message object voor het bericht dat is gemaakt.

Uitzonderingen

version of action is null.

Opmerkingen

Deze statische methode wordt gebruikt om een nieuwe kopie van het bericht te maken dat gereed is voor verzending.

Van toepassing op

CreateMessage(MessageVersion, String, XmlDictionaryReader)

Bron:
Message.cs
Bron:
Message.cs
Bron:
Message.cs

Hiermee maakt u een bericht met de opgegeven versie, actie en hoofdtekst.

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

Parameters

version
MessageVersion

Een MessageVersion object dat de SOAP-versie aangeeft die voor het bericht moet worden gebruikt.

action
String

Een beschrijving van hoe het bericht moet worden verwerkt.

body
XmlDictionaryReader

De hoofdtekst van het bericht.

Retouren

Een Message object voor het bericht dat is gemaakt.

Uitzonderingen

versionof actionbody is null.

Opmerkingen

Deze statische methode wordt gebruikt om een nieuwe kopie van het bericht te maken dat gereed is voor verzending.

Van toepassing op