Message.CreateMessage Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Tworzy komunikat.
Przeciążenia
CreateMessage(MessageVersion, FaultCode, String, Object, String) |
Tworzy komunikat zawierający błąd PROTOKOŁU SOAP, przyczynę i szczegóły błędu, wersję i akcję. |
CreateMessage(MessageVersion, FaultCode, String, String) |
Tworzy komunikat zawierający błąd PROTOKOŁU SOAP, przyczynę błędu, wersję i akcję. |
CreateMessage(XmlReader, Int32, MessageVersion) |
Tworzy komunikat przy użyciu określonego czytnika, akcji i wersji. |
CreateMessage(XmlDictionaryReader, Int32, MessageVersion) |
Tworzy komunikat przy użyciu określonego czytnika, akcji i wersji. |
CreateMessage(MessageVersion, String, XmlReader) |
Tworzy komunikat przy użyciu określonego czytnika, akcji i wersji. |
CreateMessage(MessageVersion, String, Object, XmlObjectSerializer) |
Tworzy komunikat przy użyciu określonej wersji, akcji, treści komunikatu i serializatora. |
CreateMessage(MessageVersion, String, BodyWriter) |
Tworzy komunikat z treścią składającą się z tablicy bajtów. |
CreateMessage(MessageVersion, String, Object) |
Tworzy komunikat z określoną wersją, akcją i treścią. |
CreateMessage(MessageVersion, MessageFault, String) |
Tworzy komunikat zawierający błąd PROTOKOŁU SOAP, wersję i akcję. |
CreateMessage(MessageVersion, String, XmlDictionaryReader) |
Tworzy komunikat z określoną wersją, akcją i treścią. |
CreateMessage(MessageVersion, String) |
Tworzy komunikat zawierający wersję i akcję. |
Przykłady
Poniższy przykład kodu przedstawia klienta, który używa fabryki kanałów do wysyłania wiadomości i odczytywania odpowiedzi.
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
Uwagi
Ta metoda służy do tworzenia nowej kopii komunikatu gotowego do wysłania.
Podczas pracy z komunikatami JSON użyj CreateMessage(MessageVersion, String, Object, XmlObjectSerializer) metody , CreateMessage(MessageVersion, String, Object) metoda nie działa z komunikatami JSON.
CreateMessage(MessageVersion, FaultCode, String, Object, String)
- Źródło:
- Message.cs
- Źródło:
- Message.cs
- Źródło:
- Message.cs
Tworzy komunikat zawierający błąd PROTOKOŁU SOAP, przyczynę i szczegóły błędu, wersję i akcję.
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
MessageVersion Obiekt określający wersję protokołu SOAP do użycia dla komunikatu.
- faultCode
- FaultCode
MessageFault Obiekt reprezentujący błąd PROTOKOŁU SOAP.
- reason
- String
Przyczyna błędu PROTOKOŁU SOAP.
- detail
- Object
Szczegóły błędu protokołu SOAP.
- action
- String
Opis sposobu przetwarzania komunikatu.
Zwraca
Message Obiekt dla utworzonego komunikatu.
Wyjątki
version
, fault
, action
lub detail
faultCode
to null
.
Uwagi
Ta statyczna metoda służy do tworzenia nowej kopii komunikatu gotowego do wysyłania.
Dotyczy
CreateMessage(MessageVersion, FaultCode, String, String)
- Źródło:
- Message.cs
- Źródło:
- Message.cs
- Źródło:
- Message.cs
Tworzy komunikat zawierający błąd PROTOKOŁU SOAP, przyczynę błędu, wersję i akcję.
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
MessageVersion Obiekt określający wersję protokołu SOAP do użycia dla komunikatu.
- faultCode
- FaultCode
MessageFault Obiekt reprezentujący błąd PROTOKOŁU SOAP.
- reason
- String
Przyczyna błędu PROTOKOŁU SOAP.
- action
- String
Opis sposobu przetwarzania komunikatu.
Zwraca
Message Obiekt dla utworzonego komunikatu.
Wyjątki
version
, fault
lub action
faultCode
to null
.
Uwagi
Ta statyczna metoda służy do tworzenia nowej kopii komunikatu gotowego do wysyłania.
Dotyczy
CreateMessage(XmlReader, Int32, MessageVersion)
- Źródło:
- Message.cs
- Źródło:
- Message.cs
- Źródło:
- Message.cs
Tworzy komunikat przy użyciu określonego czytnika, akcji i wersji.
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
Maksymalny rozmiar w bajtach nagłówka.
- version
- MessageVersion
MessageVersion Obiekt określający wersję protokołu SOAP do użycia dla komunikatu.
Zwraca
Message Obiekt dla utworzonego komunikatu.
Wyjątki
envelopeReader
lub version
to null
.
Uwagi
Message przejmuje własność obiektu envelopeReader
.
Ta metoda odczytuje kopertę, buforuje wszystkie nagłówki do kolekcji nagłówków i odczytuje do, ale nie uwzględnia tagu startowego Body
i zwraca komunikat. Jeśli wywołanie metody zgłasza wyjątek, zamyka czytnik.
Treść zwróconej wiadomości może być następnie odczytywana lub zapisywana.
Treść komunikatu można odczytać przy użyciu GetBody metod zwracanych komunikatów. Zwrócony obiekt hermetyzuje wszystkie elementy podrzędne w elemecie Body
. Treść wiadomości można napisać przy użyciu polecenia WriteBody lub WriteMessage. Po zapisaniu nie można go odczytać.
Zamknięcie komunikatu zamyka podstawowy czytnik kopert.
Dotyczy
CreateMessage(XmlDictionaryReader, Int32, MessageVersion)
- Źródło:
- Message.cs
- Źródło:
- Message.cs
- Źródło:
- Message.cs
Tworzy komunikat przy użyciu określonego czytnika, akcji i wersji.
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
Obiekt XmlDictionaryReader , który ma być używany do odczytywania komunikatu SOAP.
- maxSizeOfHeaders
- Int32
Maksymalny rozmiar w bajtach nagłówka.
- version
- MessageVersion
Prawidłowa MessageVersion wartość określająca wersję protokołu SOAP do użycia dla komunikatu.
Zwraca
Message Obiekt dla utworzonego komunikatu.
Wyjątki
envelopeReader
lub version
to null
.
Uwagi
Message przejmuje własność obiektu envelopeReader
.
Ta metoda odczytuje kopertę, buforuje wszystkie nagłówki do kolekcji nagłówków i odczytuje do, ale nie uwzględnia tagu startowego Body
i zwraca komunikat. Jeśli wywołanie metody zgłasza wyjątek, zamyka czytnik.
Treść zwróconej wiadomości może być następnie odczytywana lub zapisywana.
Treść komunikatu można odczytać przy użyciu GetBody metod zwracanych komunikatów. Zwrócony obiekt hermetyzuje wszystkie elementy podrzędne w elemecie Body
. Treść wiadomości można napisać przy użyciu polecenia WriteBody lub WriteMessage. Po zapisaniu nie można go odczytać.
Zamknięcie komunikatu zamyka podstawowy czytnik kopert.
Dotyczy
CreateMessage(MessageVersion, String, XmlReader)
- Źródło:
- Message.cs
- Źródło:
- Message.cs
- Źródło:
- Message.cs
Tworzy komunikat przy użyciu określonego czytnika, akcji i wersji.
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
MessageVersion Obiekt określający wersję protokołu SOAP do użycia dla komunikatu.
- action
- String
Opis sposobu przetwarzania komunikatu.
Zwraca
Message Obiekt dla utworzonego komunikatu.
Wyjątki
version
, action
lub body
to null
.
Uwagi
Ta statyczna metoda służy do tworzenia nowej kopii komunikatu gotowego do wysyłania.
Dotyczy
CreateMessage(MessageVersion, String, Object, XmlObjectSerializer)
- Źródło:
- Message.cs
- Źródło:
- Message.cs
- Źródło:
- Message.cs
Tworzy komunikat przy użyciu określonej wersji, akcji, treści komunikatu i serializatora.
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
MessageVersion Obiekt określający wersję protokołu SOAP do użycia dla komunikatu.
- action
- String
Opis sposobu przetwarzania komunikatu.
- body
- Object
Treść wiadomości.
- serializer
- XmlObjectSerializer
XmlObjectSerializer Obiekt używany do serializacji komunikatu.
Zwraca
Message Obiekt dla utworzonego komunikatu.
Wyjątki
version
, fault
lub action
to null
.
Uwagi
Ta statyczna metoda służy do tworzenia nowej kopii komunikatu gotowego do wysyłania.
Podczas pracy z komunikatami JSON użyj CreateMessage(MessageVersion, String, Object, XmlObjectSerializer) metody , CreateMessage(MessageVersion, String, Object) metoda nie działa z komunikatami JSON.
Dotyczy
CreateMessage(MessageVersion, String, BodyWriter)
- Źródło:
- Message.cs
- Źródło:
- Message.cs
- Źródło:
- Message.cs
Tworzy komunikat z treścią składającą się z tablicy bajtów.
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
MessageVersion Obiekt określający wersję protokołu SOAP do użycia dla komunikatu.
- action
- String
Opis sposobu przetwarzania komunikatu.
- body
- BodyWriter
Bajt BodyWriter typu.
Zwraca
Message Obiekt dla utworzonego komunikatu.
Wyjątki
Version
, action
lub body
to null
.
Uwagi
Pusty komunikat jest przydatny dla punktu końcowego w celu wysłania alertu do innego punktu końcowego bez rzeczywistej zawartości.
Dotyczy
CreateMessage(MessageVersion, String, Object)
- Źródło:
- Message.cs
- Źródło:
- Message.cs
- Źródło:
- Message.cs
Tworzy komunikat z określoną wersją, akcją i treścią.
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
MessageVersion Obiekt określający wersję protokołu SOAP do użycia dla komunikatu.
- action
- String
Opis sposobu przetwarzania komunikatu.
- body
- Object
Treść wiadomości.
Zwraca
Message Obiekt dla utworzonego komunikatu.
Wyjątki
version
, action
lub body
to null
.
Uwagi
Ta statyczna metoda służy do tworzenia nowej kopii komunikatu gotowego do wysyłania.
Podczas pracy z komunikatami JSON użyj CreateMessage(MessageVersion, String, Object, XmlObjectSerializer) metody , CreateMessage(MessageVersion, String, Object) metoda nie działa z komunikatami JSON.
Dotyczy
CreateMessage(MessageVersion, MessageFault, String)
- Źródło:
- Message.cs
- Źródło:
- Message.cs
- Źródło:
- Message.cs
Tworzy komunikat zawierający błąd PROTOKOŁU SOAP, wersję i akcję.
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
MessageVersion Obiekt określający wersję protokołu SOAP do użycia dla komunikatu.
- fault
- MessageFault
MessageFault Obiekt reprezentujący błąd PROTOKOŁU SOAP.
- action
- String
Opis sposobu przetwarzania komunikatu.
Zwraca
Message Obiekt dla utworzonego komunikatu.
Wyjątki
Version
, fault
lub action
to null
.
Uwagi
Ta statyczna metoda służy do tworzenia nowej kopii komunikatu gotowego do wysyłania.
Dotyczy
CreateMessage(MessageVersion, String, XmlDictionaryReader)
- Źródło:
- Message.cs
- Źródło:
- Message.cs
- Źródło:
- Message.cs
Tworzy komunikat z określoną wersją, akcją i treścią.
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
MessageVersion Obiekt określający wersję protokołu SOAP do użycia dla komunikatu.
- action
- String
Opis sposobu przetwarzania komunikatu.
- body
- XmlDictionaryReader
Treść wiadomości.
Zwraca
Message Obiekt dla utworzonego komunikatu.
Wyjątki
version
, action
lub body
to null
.
Uwagi
Ta statyczna metoda służy do tworzenia nowej kopii komunikatu gotowego do wysyłania.
Dotyczy
CreateMessage(MessageVersion, String)
- Źródło:
- Message.cs
- Źródło:
- Message.cs
- Źródło:
- Message.cs
Tworzy komunikat zawierający wersję i akcję.
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
MessageVersion Obiekt określający wersję protokołu SOAP do użycia dla komunikatu.
- action
- String
Opis sposobu przetwarzania komunikatu.
Zwraca
Message Obiekt dla utworzonego komunikatu.
Wyjątki
version
lub action
to null
.
Uwagi
Ta statyczna metoda służy do tworzenia nowej kopii komunikatu gotowego do wysyłania.