Message.CreateMessage Metod
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Skapar ett meddelande.
Överlagringar
| Name | Description |
|---|---|
| CreateMessage(MessageVersion, FaultCode, String, Object, String) |
Skapar ett meddelande som innehåller ett SOAP-fel, en orsak och information om felet, en version och en åtgärd. |
| CreateMessage(MessageVersion, String, Object, XmlObjectSerializer) |
Skapar ett meddelande med den angivna versionen, åtgärden, meddelandetexten och serialiseraren. |
| CreateMessage(MessageVersion, FaultCode, String, String) |
Skapar ett meddelande som innehåller ett SOAP-fel, orsaken till felet, en version och en åtgärd. |
| CreateMessage(XmlDictionaryReader, Int32, MessageVersion) |
Skapar ett meddelande med den angivna läsaren, åtgärden och versionen. |
| CreateMessage(MessageVersion, String, XmlReader) |
Skapar ett meddelande med den angivna läsaren, åtgärden och versionen. |
| CreateMessage(XmlReader, Int32, MessageVersion) |
Skapar ett meddelande med den angivna läsaren, åtgärden och versionen. |
| CreateMessage(MessageVersion, String, BodyWriter) |
Skapar ett meddelande med en brödtext som består av en matris med byte. |
| CreateMessage(MessageVersion, String, Object) |
Skapar ett meddelande med den angivna versionen, åtgärden och brödtexten. |
| CreateMessage(MessageVersion, MessageFault, String) |
Skapar ett meddelande som innehåller ett SOAP-fel, en version och en åtgärd. |
| CreateMessage(MessageVersion, String) |
Skapar ett meddelande som innehåller en version och en åtgärd. |
| CreateMessage(MessageVersion, String, XmlDictionaryReader) |
Skapar ett meddelande med den angivna versionen, åtgärden och brödtexten. |
Exempel
I följande kodexempel visas en klient som använder kanalfabriken för att skicka ett meddelande och läsa svaret.
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
Kommentarer
Den här metoden används för att skapa en ny kopia av ett meddelande som är redo att skickas.
När du arbetar med JSON-meddelanden använder CreateMessage(MessageVersion, String, Object, XmlObjectSerializer) metoden CreateMessage(MessageVersion, String, Object) fungerar inte metoden med JSON-meddelanden.
CreateMessage(MessageVersion, FaultCode, String, Object, String)
Skapar ett meddelande som innehåller ett SOAP-fel, en orsak och information om felet, en version och en åtgärd.
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
Parametrar
- version
- MessageVersion
Ett MessageVersion objekt som anger vilken SOAP-version som ska användas för meddelandet.
- faultCode
- FaultCode
Ett MessageFault objekt som representerar ett SOAP-fel.
- reason
- String
Orsaken till SOAP-felet.
- detail
- Object
Information om SOAP-felet.
- action
- String
En beskrivning av hur meddelandet ska bearbetas.
Returer
Ett Message objekt för meddelandet som skapats.
Undantag
version, fault, action, detail eller faultCode är null.
Kommentarer
Den här statiska metoden används för att skapa en ny kopia av meddelandet som är redo att skickas.
Gäller för
CreateMessage(MessageVersion, String, Object, XmlObjectSerializer)
Skapar ett meddelande med den angivna versionen, åtgärden, meddelandetexten och serialiseraren.
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
Parametrar
- version
- MessageVersion
Ett MessageVersion objekt som anger vilken SOAP-version som ska användas för meddelandet.
- action
- String
En beskrivning av hur meddelandet ska bearbetas.
- body
- Object
Meddelandets brödtext.
- serializer
- XmlObjectSerializer
Ett XmlObjectSerializer objekt som används för att serialisera meddelandet.
Returer
Ett Message objekt för meddelandet som skapats.
Undantag
version, fault eller action är null.
Kommentarer
Den här statiska metoden används för att skapa en ny kopia av meddelandet som är redo att skickas.
När du arbetar med JSON-meddelanden använder CreateMessage(MessageVersion, String, Object, XmlObjectSerializer) metoden CreateMessage(MessageVersion, String, Object) fungerar inte metoden med JSON-meddelanden.
Gäller för
CreateMessage(MessageVersion, FaultCode, String, String)
Skapar ett meddelande som innehåller ett SOAP-fel, orsaken till felet, en version och en åtgärd.
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
Parametrar
- version
- MessageVersion
Ett MessageVersion objekt som anger vilken SOAP-version som ska användas för meddelandet.
- faultCode
- FaultCode
Ett MessageFault objekt som representerar ett SOAP-fel.
- reason
- String
Orsaken till SOAP-felet.
- action
- String
En beskrivning av hur meddelandet ska bearbetas.
Returer
Ett Message objekt för meddelandet som skapats.
Undantag
version, fault, action eller faultCode är null.
Kommentarer
Den här statiska metoden används för att skapa en ny kopia av meddelandet som är redo att skickas.
Gäller för
CreateMessage(XmlDictionaryReader, Int32, MessageVersion)
Skapar ett meddelande med den angivna läsaren, åtgärden och versionen.
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
Parametrar
- envelopeReader
- XmlDictionaryReader
Det XmlDictionaryReader objekt som ska användas för att läsa SOAP-meddelandet.
- maxSizeOfHeaders
- Int32
Den maximala storleken i byte för ett sidhuvud.
- version
- MessageVersion
Ett giltigt MessageVersion värde som anger vilken SOAP-version som ska användas för meddelandet.
Returer
Ett Message objekt för meddelandet som skapats.
Undantag
envelopeReader eller version är null.
Kommentarer
Message äger envelopeReader.
Den här metoden läser kuvertet, buffrar alla rubriker i rubriksamlingen och läser upp till men inte starttaggen Body och returnerar meddelandet. Om metodanropet utlöser ett undantag stängs läsaren.
Brödtexten i det returnerade meddelandet kan sedan antingen läsas eller skrivas.
Meddelandetexten kan läsas med hjälp av GetBody metoderna för det returnerade meddelandet. Det returnerade objektet kapslar in alla underordnade element i elementet Body . Meddelandetexten kan skrivas med eller WriteBodyWriteMessage. När den har skrivits kan den inte läsas.
När meddelandet stängs stängs den underliggande kuvertläsaren.
Gäller för
CreateMessage(MessageVersion, String, XmlReader)
Skapar ett meddelande med den angivna läsaren, åtgärden och versionen.
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
Parametrar
- version
- MessageVersion
Ett MessageVersion objekt som anger vilken SOAP-version som ska användas för meddelandet.
- action
- String
En beskrivning av hur meddelandet ska bearbetas.
Returer
Ett Message objekt för meddelandet som skapats.
Undantag
version, action eller body är null.
Kommentarer
Den här statiska metoden används för att skapa en ny kopia av meddelandet som är redo att skickas.
Gäller för
CreateMessage(XmlReader, Int32, MessageVersion)
Skapar ett meddelande med den angivna läsaren, åtgärden och versionen.
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
Parametrar
- maxSizeOfHeaders
- Int32
Den maximala storleken i byte för ett sidhuvud.
- version
- MessageVersion
Ett MessageVersion objekt som anger vilken SOAP-version som ska användas för meddelandet.
Returer
Ett Message objekt för meddelandet som skapats.
Undantag
envelopeReader eller version är null.
Kommentarer
Message äger envelopeReader.
Den här metoden läser kuvertet, buffrar alla rubriker i rubriksamlingen och läser upp till men inte starttaggen Body och returnerar meddelandet. Om metodanropet utlöser ett undantag stängs läsaren.
Brödtexten i det returnerade meddelandet kan sedan antingen läsas eller skrivas.
Meddelandetexten kan läsas med hjälp av GetBody metoderna för det returnerade meddelandet. Det returnerade objektet kapslar in alla underordnade element i elementet Body . Meddelandetexten kan skrivas med eller WriteBodyWriteMessage. När den har skrivits kan den inte läsas.
När meddelandet stängs stängs den underliggande kuvertläsaren.
Gäller för
CreateMessage(MessageVersion, String, BodyWriter)
Skapar ett meddelande med en brödtext som består av en matris med byte.
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
Parametrar
- version
- MessageVersion
Ett MessageVersion objekt som anger vilken SOAP-version som ska användas för meddelandet.
- action
- String
En beskrivning av hur meddelandet ska bearbetas.
- body
- BodyWriter
En BodyWriter av typen byte.
Returer
Ett Message objekt för meddelandet som skapats.
Undantag
Version, action eller body är null.
Kommentarer
Ett tomt meddelande är användbart för en slutpunkt för att skicka en avisering till en annan slutpunkt utan något faktiskt innehåll.
Gäller för
CreateMessage(MessageVersion, String, Object)
Skapar ett meddelande med den angivna versionen, åtgärden och brödtexten.
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
Parametrar
- version
- MessageVersion
Ett MessageVersion objekt som anger vilken SOAP-version som ska användas för meddelandet.
- action
- String
En beskrivning av hur meddelandet ska bearbetas.
- body
- Object
Meddelandets brödtext.
Returer
Ett Message objekt för meddelandet som skapats.
Undantag
version, action eller body är null.
Kommentarer
Den här statiska metoden används för att skapa en ny kopia av meddelandet som är redo att skickas.
När du arbetar med JSON-meddelanden använder CreateMessage(MessageVersion, String, Object, XmlObjectSerializer) metoden CreateMessage(MessageVersion, String, Object) fungerar inte metoden med JSON-meddelanden.
Gäller för
CreateMessage(MessageVersion, MessageFault, String)
Skapar ett meddelande som innehåller ett SOAP-fel, en version och en åtgärd.
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
Parametrar
- version
- MessageVersion
Ett MessageVersion objekt som anger vilken SOAP-version som ska användas för meddelandet.
- fault
- MessageFault
Ett MessageFault objekt som representerar ett SOAP-fel.
- action
- String
En beskrivning av hur meddelandet ska bearbetas.
Returer
Ett Message objekt för meddelandet som skapats.
Undantag
Version, fault eller action är null.
Kommentarer
Den här statiska metoden används för att skapa en ny kopia av meddelandet som är redo att skickas.
Gäller för
CreateMessage(MessageVersion, String)
Skapar ett meddelande som innehåller en version och en åtgärd.
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
Parametrar
- version
- MessageVersion
Ett MessageVersion objekt som anger vilken SOAP-version som ska användas för meddelandet.
- action
- String
En beskrivning av hur meddelandet ska bearbetas.
Returer
Ett Message objekt för meddelandet som skapats.
Undantag
version eller action är null.
Kommentarer
Den här statiska metoden används för att skapa en ny kopia av meddelandet som är redo att skickas.
Gäller för
CreateMessage(MessageVersion, String, XmlDictionaryReader)
Skapar ett meddelande med den angivna versionen, åtgärden och brödtexten.
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
Parametrar
- version
- MessageVersion
Ett MessageVersion objekt som anger vilken SOAP-version som ska användas för meddelandet.
- action
- String
En beskrivning av hur meddelandet ska bearbetas.
- body
- XmlDictionaryReader
Meddelandets brödtext.
Returer
Ett Message objekt för meddelandet som skapats.
Undantag
version, action eller body är null.
Kommentarer
Den här statiska metoden används för att skapa en ny kopia av meddelandet som är redo att skickas.