ActionMessageFilter Class
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Represents a query that tests whether the action of a message is one of a specified set of actions.
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
- Inheritance
- Attributes
Examples
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);
}
}
}
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
Remarks
It is invalid to construct an ActionMessageFilter with no actions.
This type is serializable as a DataContractAttribute.
Constructors
ActionMessageFilter(String[]) |
Initializes a new instance of this class with the set of actions for which it tests. |
Properties
Actions |
Gets a read-only copy of action strings for which this ActionMessageFilter tests. |
Methods
CreateFilterTable<FilterData>() |
Creates a new filter table that tests efficiently on message actions. |
Equals(Object) |
Determines whether the specified object is equal to the current object. (Inherited from Object) |
GetHashCode() |
Serves as the default hash function. (Inherited from Object) |
GetType() |
Gets the Type of the current instance. (Inherited from Object) |
Match(Message) |
Tests whether a message's action matches one of the actions specified in this ActionMessageFilter. |
Match(MessageBuffer) |
Tests whether a buffered message's action header matches one of the actions specified in this ActionMessageFilter. |
MemberwiseClone() |
Creates a shallow copy of the current Object. (Inherited from Object) |
ToString() |
Returns a string that represents the current object. (Inherited from Object) |