다음을 통해 공유


ActionMessageFilter 클래스

정의

메시지 동작이 지정된 동작 집합 중 하나인지 여부를 테스트하는 쿼리를 나타냅니다.

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
상속
ActionMessageFilter
특성

예제

다음 예제에서는 두 ActionMessageFilter개의 s를 만들고, 속성을 사용하여 Actions 필터 중 하나에서 작업 문자열을 가져오고, 작업 필터에 대한 메시지를 직접 테스트하고, 필터 적용 결과를 표시합니다.

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

설명

작업 없이 생성할 ActionMessageFilter 수 없습니다.

이 형식은 직렬화할 수 있습니다 DataContractAttribute.

생성자

ActionMessageFilter(String[])

테스트할 동작 집합을 사용하여 이 클래스의 새 인스턴스를 초기화합니다.

속성

Actions

ActionMessageFilter가 테스트하는 동작 문자열의 읽기 전용 복사본을 가져옵니다.

메서드

CreateFilterTable<FilterData>()

메시지 동작을 효율적으로 테스트하는 새 필터 테이블을 만듭니다.

Equals(Object)

지정된 개체가 현재 개체와 같은지 확인합니다.

(다음에서 상속됨 Object)
GetHashCode()

기본 해시 함수로 작동합니다.

(다음에서 상속됨 Object)
GetType()

현재 인스턴스의 Type을 가져옵니다.

(다음에서 상속됨 Object)
Match(Message)

메시지의 동작이 이 ActionMessageFilter에 지정된 동작 중 하나와 일치하는지 여부를 테스트합니다.

Match(MessageBuffer)

버퍼링된 메시지의 동작 헤더가 이 ActionMessageFilter에 지정된 동작 중 하나와 일치하는지 여부를 테스트합니다.

MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.

(다음에서 상속됨 Object)
ToString()

현재 개체를 나타내는 문자열을 반환합니다.

(다음에서 상속됨 Object)

적용 대상