ActionMessageFilter Class

 

Represents a query that tests whether the action of a message is one of a specified set of actions.

Namespace:   System.ServiceModel.Dispatcher
Assembly:  System.ServiceModel (in System.ServiceModel.dll)

System.Object
  System.ServiceModel.Dispatcher.MessageFilter
    System.ServiceModel.Dispatcher.ActionMessageFilter

[DataContractAttribute]
public class ActionMessageFilter : MessageFilter

NameDescription
System_CAPS_pubmethodActionMessageFilter(String[])

Initializes a new instance of this class with the set of actions for which it tests.

NameDescription
System_CAPS_pubpropertyActions

Gets a read-only copy of action strings for which this ActionMessageFilter tests.

NameDescription
System_CAPS_protmethodCreateFilterTable<FilterData>()

Creates a new filter table that tests efficiently on message actions.(Overrides MessageFilter.CreateFilterTable<FilterData>().)

System_CAPS_pubmethodEquals(Object)

Determines whether the specified object is equal to the current object.(Inherited from Object.)

System_CAPS_protmethodFinalize()

Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.(Inherited from Object.)

System_CAPS_pubmethodGetHashCode()

Serves as the default hash function. (Inherited from Object.)

System_CAPS_pubmethodGetType()

Gets the Type of the current instance.(Inherited from Object.)

System_CAPS_pubmethodMatch(Message)

Tests whether a message's action matches one of the actions specified in this ActionMessageFilter.(Overrides MessageFilter.Match(Message).)

System_CAPS_pubmethodMatch(MessageBuffer)

Tests whether a buffered message's action header matches one of the actions specified in this ActionMessageFilter.(Overrides MessageFilter.Match(MessageBuffer).)

System_CAPS_protmethodMemberwiseClone()

Creates a shallow copy of the current Object.(Inherited from Object.)

System_CAPS_pubmethodToString()

Returns a string that represents the current object.(Inherited from Object.)

It is invalid to construct an ActionMessageFilter with no actions.

This type is serializable as a DataContractAttribute.

The following example creates two ActionMessageFilters, gets the action string out of one of the filters using the Actions property, tests a message against the action filters directly, and displays the result of applying the filter.

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);
        }
    }
}

.NET Framework
Available since 3.0

Any public static ( Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Return to top
Show: