Message.CreateMessage Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Vytvoří zprávu.
Přetížení
CreateMessage(MessageVersion, FaultCode, String, Object, String) |
Vytvoří zprávu, která obsahuje chybu SOAP, důvod a podrobnosti chyby, verzi a akci. |
CreateMessage(MessageVersion, FaultCode, String, String) |
Vytvoří zprávu, která obsahuje chybu SOAP, důvod chyby, verzi a akci. |
CreateMessage(XmlReader, Int32, MessageVersion) |
Vytvoří zprávu pomocí zadané čtečky, akce a verze. |
CreateMessage(XmlDictionaryReader, Int32, MessageVersion) |
Vytvoří zprávu pomocí zadané čtečky, akce a verze. |
CreateMessage(MessageVersion, String, XmlReader) |
Vytvoří zprávu pomocí zadané čtečky, akce a verze. |
CreateMessage(MessageVersion, String, Object, XmlObjectSerializer) |
Vytvoří zprávu pomocí zadané verze, akce, textu zprávy a serializátoru. |
CreateMessage(MessageVersion, String, BodyWriter) |
Vytvoří zprávu s textem, který se skládá z pole bajtů. |
CreateMessage(MessageVersion, String, Object) |
Vytvoří zprávu se zadanou verzí, akcí a textem. |
CreateMessage(MessageVersion, MessageFault, String) |
Vytvoří zprávu, která obsahuje chybu SOAP, verzi a akci. |
CreateMessage(MessageVersion, String, XmlDictionaryReader) |
Vytvoří zprávu se zadanou verzí, akcí a textem. |
CreateMessage(MessageVersion, String) |
Vytvoří zprávu, která obsahuje verzi a akci. |
Příklady
Následující příklad kódu ukazuje klienta, který pomocí objektu pro vytváření kanálů odešle zprávu a přečte odpověď.
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
Poznámky
Tato metoda se používá k vytvoření nové kopie zprávy připravené k odeslání.
Při práci se zprávami JSON použijte metodu CreateMessage(MessageVersion, String, Object, XmlObjectSerializer) , metoda CreateMessage(MessageVersion, String, Object) nefunguje se zprávami JSON.
CreateMessage(MessageVersion, FaultCode, String, Object, String)
- Zdroj:
- Message.cs
- Zdroj:
- Message.cs
- Zdroj:
- Message.cs
Vytvoří zprávu, která obsahuje chybu SOAP, důvod a podrobnosti chyby, verzi a akci.
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
Parametry
- version
- MessageVersion
Objekt MessageVersion , který určuje verzi protokolu SOAP, která se má použít pro zprávu.
- faultCode
- FaultCode
Objekt MessageFault , který představuje chybu SOAP.
- reason
- String
Důvod chyby SOAP.
- detail
- Object
Podrobnosti o chybě SOAP.
- action
- String
Popis způsobu zpracování zprávy
Návraty
Objekt Message pro vytvořenou zprávu.
Výjimky
version
, fault
, action
detail
nebo faultCode
je null
.
Poznámky
Tato statická metoda se používá k vytvoření nové kopie zprávy připravené k odeslání.
Platí pro
CreateMessage(MessageVersion, FaultCode, String, String)
- Zdroj:
- Message.cs
- Zdroj:
- Message.cs
- Zdroj:
- Message.cs
Vytvoří zprávu, která obsahuje chybu SOAP, důvod chyby, verzi a akci.
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
Parametry
- version
- MessageVersion
Objekt MessageVersion , který určuje verzi protokolu SOAP, která se má použít pro zprávu.
- faultCode
- FaultCode
Objekt MessageFault , který představuje chybu SOAP.
- reason
- String
Důvod chyby SOAP.
- action
- String
Popis způsobu zpracování zprávy
Návraty
Objekt Message pro vytvořenou zprávu.
Výjimky
version
action
, fault
nebo faultCode
je null
.
Poznámky
Tato statická metoda se používá k vytvoření nové kopie zprávy připravené k odeslání.
Platí pro
CreateMessage(XmlReader, Int32, MessageVersion)
- Zdroj:
- Message.cs
- Zdroj:
- Message.cs
- Zdroj:
- Message.cs
Vytvoří zprávu pomocí zadané čtečky, akce a verze.
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
Parametry
- maxSizeOfHeaders
- Int32
Maximální velikost záhlaví v bajtech.
- version
- MessageVersion
Objekt MessageVersion , který určuje verzi protokolu SOAP, která se má použít pro zprávu.
Návraty
Objekt Message pro vytvořenou zprávu.
Výjimky
envelopeReader
nebo version
je null
.
Poznámky
Messagepřebírá vlastnictví .envelopeReader
Tato metoda načte obálku, do vyrovnávací paměti všechna záhlaví do kolekce hlaviček a přečte do , ale bez Body
značky start, a vrátí zprávu. Pokud volání metody vyvolá výjimku, zavře čtečku.
Tělo vrácené zprávy pak může být přečteno nebo zapsáno.
Text zprávy lze přečíst pomocí GetBody metod u vrácené zprávy. Vrácený objekt zapouzdřuje všechny podřízené elementy v elementu Body
. Text zprávy lze napsat pomocí nebo WriteBodyWriteMessage. Jakmile ho napíšete, nelze ho přečíst.
Zavření zprávy zavře podkladovou čtečku obálky.
Platí pro
CreateMessage(XmlDictionaryReader, Int32, MessageVersion)
- Zdroj:
- Message.cs
- Zdroj:
- Message.cs
- Zdroj:
- Message.cs
Vytvoří zprávu pomocí zadané čtečky, akce a verze.
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
Parametry
- envelopeReader
- XmlDictionaryReader
Objekt XmlDictionaryReader , který se má použít pro čtení zprávy SOAP.
- maxSizeOfHeaders
- Int32
Maximální velikost záhlaví v bajtech.
- version
- MessageVersion
Platná MessageVersion hodnota, která určuje verzi protokolu SOAP, která se má použít pro zprávu.
Návraty
Objekt Message pro vytvořenou zprávu.
Výjimky
envelopeReader
nebo version
je null
.
Poznámky
Messagepřebírá vlastnictví .envelopeReader
Tato metoda načte obálku, do vyrovnávací paměti všechna záhlaví do kolekce hlaviček a přečte do , ale bez Body
značky start, a vrátí zprávu. Pokud volání metody vyvolá výjimku, zavře čtečku.
Tělo vrácené zprávy pak může být přečteno nebo zapsáno.
Text zprávy lze přečíst pomocí GetBody metod u vrácené zprávy. Vrácený objekt zapouzdřuje všechny podřízené elementy v elementu Body
. Text zprávy lze napsat pomocí nebo WriteBodyWriteMessage. Jakmile ho napíšete, nelze ho přečíst.
Zavření zprávy zavře podkladovou čtečku obálky.
Platí pro
CreateMessage(MessageVersion, String, XmlReader)
- Zdroj:
- Message.cs
- Zdroj:
- Message.cs
- Zdroj:
- Message.cs
Vytvoří zprávu pomocí zadané čtečky, akce a verze.
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
Parametry
- version
- MessageVersion
Objekt MessageVersion , který určuje verzi protokolu SOAP, která se má použít pro zprávu.
- action
- String
Popis způsobu zpracování zprávy
Návraty
Objekt Message pro vytvořenou zprávu.
Výjimky
version
nebo action
body
je null
.
Poznámky
Tato statická metoda se používá k vytvoření nové kopie zprávy připravené k odeslání.
Platí pro
CreateMessage(MessageVersion, String, Object, XmlObjectSerializer)
- Zdroj:
- Message.cs
- Zdroj:
- Message.cs
- Zdroj:
- Message.cs
Vytvoří zprávu pomocí zadané verze, akce, textu zprávy a serializátoru.
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
Parametry
- version
- MessageVersion
Objekt MessageVersion , který určuje verzi protokolu SOAP, která se má použít pro zprávu.
- action
- String
Popis způsobu zpracování zprávy
- body
- Object
Text zprávy.
- serializer
- XmlObjectSerializer
Objekt XmlObjectSerializer použitý k serializaci zprávy.
Návraty
Objekt Message pro vytvořenou zprávu.
Výjimky
version
nebo fault
action
je null
.
Poznámky
Tato statická metoda se používá k vytvoření nové kopie zprávy připravené k odeslání.
Při práci se zprávami JSON použijte metodu CreateMessage(MessageVersion, String, Object, XmlObjectSerializer)CreateMessage(MessageVersion, String, Object) , metoda nefunguje se zprávami JSON.
Platí pro
CreateMessage(MessageVersion, String, BodyWriter)
- Zdroj:
- Message.cs
- Zdroj:
- Message.cs
- Zdroj:
- Message.cs
Vytvoří zprávu s textem, který se skládá z pole bajtů.
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
Parametry
- version
- MessageVersion
Objekt MessageVersion , který určuje verzi protokolu SOAP, která se má použít pro zprávu.
- action
- String
Popis způsobu zpracování zprávy
- body
- BodyWriter
A BodyWriter typu bajtu.
Návraty
Objekt Message pro vytvořenou zprávu.
Výjimky
Version
nebo action
body
je null
.
Poznámky
Prázdná zpráva je užitečná, když koncový bod odešle upozornění do jiného koncového bodu bez skutečného obsahu.
Platí pro
CreateMessage(MessageVersion, String, Object)
- Zdroj:
- Message.cs
- Zdroj:
- Message.cs
- Zdroj:
- Message.cs
Vytvoří zprávu se zadanou verzí, akcí a textem.
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
Parametry
- version
- MessageVersion
Objekt MessageVersion , který určuje verzi protokolu SOAP, která se má použít pro zprávu.
- action
- String
Popis způsobu zpracování zprávy
- body
- Object
Text zprávy.
Návraty
Objekt Message pro zprávu byl vytvořen.
Výjimky
version
nebo action
body
je null
.
Poznámky
Tato statická metoda slouží k vytvoření nové kopie zprávy připravené k odeslání.
Při práci se zprávami JSON použijte metodu CreateMessage(MessageVersion, String, Object, XmlObjectSerializer) , metoda CreateMessage(MessageVersion, String, Object) nefunguje se zprávami JSON.
Platí pro
CreateMessage(MessageVersion, MessageFault, String)
- Zdroj:
- Message.cs
- Zdroj:
- Message.cs
- Zdroj:
- Message.cs
Vytvoří zprávu, která obsahuje chybu SOAP, verzi a akci.
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
Parametry
- version
- MessageVersion
Objekt MessageVersion , který určuje verzi protokolu SOAP, která se má použít pro zprávu.
- fault
- MessageFault
Objekt MessageFault , který představuje chybu SOAP.
- action
- String
Popis způsobu zpracování zprávy
Návraty
Objekt Message pro zprávu byl vytvořen.
Výjimky
Version
nebo fault
action
je null
.
Poznámky
Tato statická metoda slouží k vytvoření nové kopie zprávy připravené k odeslání.
Platí pro
CreateMessage(MessageVersion, String, XmlDictionaryReader)
- Zdroj:
- Message.cs
- Zdroj:
- Message.cs
- Zdroj:
- Message.cs
Vytvoří zprávu se zadanou verzí, akcí a textem.
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
Parametry
- version
- MessageVersion
Objekt MessageVersion , který určuje verzi protokolu SOAP, která se má použít pro zprávu.
- action
- String
Popis způsobu zpracování zprávy
- body
- XmlDictionaryReader
Text zprávy.
Návraty
Objekt Message pro zprávu byl vytvořen.
Výjimky
version
nebo action
body
je null
.
Poznámky
Tato statická metoda slouží k vytvoření nové kopie zprávy připravené k odeslání.
Platí pro
CreateMessage(MessageVersion, String)
- Zdroj:
- Message.cs
- Zdroj:
- Message.cs
- Zdroj:
- Message.cs
Vytvoří zprávu, která obsahuje verzi a akci.
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
Parametry
- version
- MessageVersion
Objekt MessageVersion , který určuje verzi protokolu SOAP, která se má použít pro zprávu.
- action
- String
Popis způsobu zpracování zprávy
Návraty
Objekt Message pro zprávu byl vytvořen.
Výjimky
version
nebo action
je null
.
Poznámky
Tato statická metoda slouží k vytvoření nové kopie zprávy připravené k odeslání.