Freigeben über


ActionMessageFilter Klasse

Definition

Stellt eine Abfrage dar, die testet, ob die Aktion einer Nachricht eine der angegebenen Aktionen ist.

public ref class ActionMessageFilter : System::ServiceModel::Dispatcher::MessageFilter
[System.Runtime.Serialization.DataContract]
public class ActionMessageFilter : System.ServiceModel.Dispatcher.MessageFilter
[<System.Runtime.Serialization.DataContract>]
type ActionMessageFilter = class
    inherit MessageFilter
Public Class ActionMessageFilter
Inherits MessageFilter
Vererbung
ActionMessageFilter
Attribute

Beispiele

Das folgende Beispiel erstellt zwei ActionMessageFilters, ruft die Aktionszeichenfolge aus einem der Filter mithilfe der Actions Eigenschaft ab, testet eine Meldung direkt mit den Aktionsfiltern und zeigt das Ergebnis der Anwendung des Filters an.

using System;
using System.Collections.ObjectModel;
using System.ServiceModel;
using System.ServiceModel.Channels;
using System.ServiceModel.Dispatcher;

namespace UE.Wfc.Samples
{
    public static class ActionMessageFilterMatching
    {
        public static void Main()
        {
            // Create several action filters.
            ActionMessageFilter myActFltr = new ActionMessageFilter("1st Action", "2nd Action");
            ActionMessageFilter yourActFltr = new ActionMessageFilter("Your Action");

            // Display the ActionMessageFilter actions.
            ReadOnlyCollection<string> results = myActFltr.Actions;

            foreach (string result in results)
            {
                System.Console.WriteLine(result);
            }

            // Create a message.
            Message message = Message.CreateMessage(MessageVersion.Soap12WSAddressing10, "myBody");

            // Test the message action against a single action filter.
            bool test1 = myActFltr.Match(message);
            bool test2 = yourActFltr.Match(message);
            System.Console.WriteLine("The result of test1 is {0}", test1);
            System.Console.WriteLine("The result of test2 is {0}", test2);
        }
    }
}
Imports System.Collections.ObjectModel
Imports System.ServiceModel
Imports System.ServiceModel.Channels
Imports System.ServiceModel.Dispatcher

Namespace UE.Wfc.Samples
    Class ActionMessageFilterMatching

        Shared Sub Main()

            ' Create several action filters.
            Dim myActFltr As ActionMessageFilter = New ActionMessageFilter("1st Action", "2nd Action")
            Dim yourACtFltr As ActionMessageFilter = New ActionMessageFilter("Your Action")

            ' Display the ActionMessageFilter actions.
            Dim results As ReadOnlyCollection(Of String) = myActFltr.Actions

            For Each result As String In results
                System.Console.WriteLine(result)
            Next

            ' Create a message.
            Dim message As Message = Channels.Message.CreateMessage(MessageVersion.Soap11WSAddressing10, "myBody")

            ' Test the message action against a single action filter.
            Dim test1 As Boolean = myActFltr.Match(message)
            Dim test2 As Boolean = yourACtFltr.Match(message)
            System.Console.WriteLine("The result of test1 is {0}", test1)
            System.Console.WriteLine("The result of test2 is {0}", test2)

        End Sub
    End Class
End Namespace

Hinweise

Es ist ungültig, eine ActionMessageFilter Aktion ohne Aktionen zu erstellen.

Dieser Typ kann als serialisierbar sein DataContractAttribute.

Konstruktoren

Name Beschreibung
ActionMessageFilter(String[])

Initialisiert eine neue Instanz dieser Klasse mit dem Satz von Aktionen, für die sie testet.

Eigenschaften

Name Beschreibung
Actions

Ruft eine schreibgeschützte Kopie von Aktionszeichenfolgen ab, für die diese Tests ausgeführt werden ActionMessageFilter .

Methoden

Name Beschreibung
CreateFilterTable<FilterData>()

Erstellt eine neue Filtertabelle, die effizient auf Nachrichtenaktionen testet.

Equals(Object)

Bestimmt, ob das angegebene Objekt dem aktuellen Objekt entspricht.

(Geerbt von Object)
GetHashCode()

Dient als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft die Type der aktuellen Instanz ab.

(Geerbt von Object)
Match(Message)

Testet, ob die Aktion einer Nachricht mit einer der in diesem ActionMessageFilterAbschnitt angegebenen Aktionen übereinstimmt.

Match(MessageBuffer)

Testet, ob der Aktionsheader einer gepufferten Nachricht mit einer der aktionen übereinstimmt, die in diesem ActionMessageFilterAbschnitt angegeben sind.

MemberwiseClone()

Erstellt eine flache Kopie der aktuellen Object.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Gilt für: