MessageDescription Klasse
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.
Stellt die Beschreibung einer Nachricht dar.
public ref class MessageDescription
public class MessageDescription
type MessageDescription = class
Public Class MessageDescription
- Vererbung
-
MessageDescription
Beispiele
Im folgenden Beispiel wird die MessageDescription verwendet, die von der Messages-Eigenschaft der OperationDescription-Klasse zurückgegeben wird. Mit folgendem Code wird die Auflistung von Endpunkten durchlaufen und jeder Endpunktname sowie der Name jedes Vorgangs im Endpunkt ausgegeben.
private void PrintDescription(ServiceHost sh)
{
// Declare variables.
int i, j, k, l, c;
ServiceDescription servDesc = sh.Description;
OperationDescription opDesc;
ContractDescription contractDesc;
MessageDescription methDesc;
MessageBodyDescription mBodyDesc;
MessagePartDescription partDesc;
IServiceBehavior servBeh;
ServiceEndpoint servEP;
// Print the behaviors of the service.
Console.WriteLine("Behaviors:");
for (c = 0; c < servDesc.Behaviors.Count; c++)
{
servBeh = servDesc.Behaviors[c];
Console.WriteLine("\t{0}", servBeh.ToString());
}
// Print the endpoint descriptions of the service.
Console.WriteLine("Endpoints");
for (i = 0; i < servDesc.Endpoints.Count; i++)
{
// Print the endpoint names.
servEP = servDesc.Endpoints[i];
Console.WriteLine("\tName: {0}", servEP.Name);
contractDesc = servEP.Contract;
Console.WriteLine("\tOperations:");
for (j = 0; j < contractDesc.Operations.Count; j++)
{
// Print the operation names.
opDesc = servEP.Contract.Operations[j];
Console.WriteLine("\t\t{0}", opDesc.Name);
Console.WriteLine("\t\tActions:");
for (k = 0; k < opDesc.Messages.Count; k++)
{
// Print the message action.
methDesc = opDesc.Messages[k];
Console.WriteLine("\t\t\tAction:{0}", methDesc.Action);
// Check for the existence of a body, then the body description.
mBodyDesc = methDesc.Body;
if (mBodyDesc.Parts.Count > 0)
{
for (l = 0; l < methDesc.Body.Parts.Count; l++)
{
partDesc = methDesc.Body.Parts[l];
Console.WriteLine("\t\t\t\t{0}",partDesc.Name);
}
}
}
}
}
}
Private Sub PrintDescription(ByVal sh As ServiceHost)
' Declare variables.
Dim i, j, k, l, c As Integer
Dim servDesc As ServiceDescription = sh.Description
Dim opDesc As OperationDescription
Dim contractDesc As ContractDescription
Dim methDesc As MessageDescription
Dim mBodyDesc As MessageBodyDescription
Dim partDesc As MessagePartDescription
Dim servBeh As IServiceBehavior
Dim servEP As ServiceEndpoint
' Print the behaviors of the service.
Console.WriteLine("Behaviors:")
For c = 0 To servDesc.Behaviors.Count-1
servBeh = servDesc.Behaviors(c)
Console.WriteLine(vbTab + "{0}", servBeh)
Next c
' Print the endpoint descriptions of the service.
Console.WriteLine("Endpoints")
For i = 0 To servDesc.Endpoints.Count-1
' Print the endpoint names.
servEP = servDesc.Endpoints(i)
Console.WriteLine(vbTab + "Name: {0}", servEP.Name)
contractDesc = servEP.Contract
Console.WriteLine(vbTab + "Operations:")
For j = 0 To contractDesc.Operations.Count-1
' Print operation names.
opDesc = servEP.Contract.Operations(j)
Console.WriteLine(vbTab + vbTab + "{0}", opDesc.Name)
Console.WriteLine(vbTab + vbTab + "Actions:")
For k = 0 To opDesc.Messages.Count-1
' Print the message action.
methDesc = opDesc.Messages(k)
Console.WriteLine(vbTab + vbTab + vbTab + _
"Action:{0}", methDesc.Action)
' Check for the existence of a body, then the body description.
mBodyDesc = methDesc.Body
If mBodyDesc.Parts.Count > 0 Then
For l = 0 To methDesc.Body.Parts.Count-1
partDesc = methDesc.Body.Parts(l)
Console.WriteLine(vbTab + vbTab + _
vbTab + vbTab + "{0}", partDesc.Name)
Next l
End If
Next k
Next j
Next i
End Sub
Hinweise
MessageDescription enthält die Headers-Eigenschaft und die Body-Eigenschaft, um Zugriff auf diese Teile der Nachricht zu bieten. Ob die Nachricht eingehend oder ausgehend ist, wird von der Direction-Eigenschaft angegeben. Außerdem wird eine Action Eigenschaft bereitgestellt, in der der URI, der die Absicht der Nachricht angibt, angegeben werden kann.
Konstruktoren
MessageDescription(String, MessageDirection) |
Initialisiert eine neue Instanz der MessageDescription-Klasse mit einer angegebenen Aktion und Richtung. |
Eigenschaften
Action |
Ruft den Aktionsparameter der SOAP-Nachricht ab, der die Absicht der Nachricht identifiziert, oder legt diesen fest. |
Body |
Ruft den Textkörper der SOAP-Nachricht ab. |
Direction |
Ruft die Richtung ab, die angibt, ob die Nachricht eingehend oder ausgehend ist. |
HasProtectionLevel |
Ruft einen Wert ab, der angibt, ob ProtectionLevel festgelegt wurde. |
Headers |
Ruft die Beschreibung der Header der SOAP-Nachricht ab. |
MessageType |
Ruft einen Typ ab, der den Typ des Nachrichtenvertrags identifiziert, oder legt diesen fest. |
Properties |
Ruft eine Beschreibung der Eigenschaften der SOAP-Nachricht ab. |
ProtectionLevel |
Ruft die Sicherheitsdienste ab, die für die Nachricht erforderlich sind, oder legt diese fest. |
Methoden
Equals(Object) |
Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist. (Geerbt von Object) |
GetHashCode() |
Fungiert als Standardhashfunktion. (Geerbt von Object) |
GetType() |
Ruft den Type der aktuellen Instanz ab. (Geerbt von Object) |
MemberwiseClone() |
Erstellt eine flache Kopie des aktuellen Object. (Geerbt von Object) |
ShouldSerializeProtectionLevel() |
Gibt einen Wert zurück, der angibt, ob die ProtectionLevel-Eigenschaft ihren Standardwert geändert hat und serialisiert werden soll. |
ToString() |
Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Geerbt von Object) |