MessageFilter 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
메시지를 쿼리하는 데 사용되는 다양한 필터 클래스에 대한 abstract
기본 클래스입니다.
public ref class MessageFilter abstract
[System.Runtime.Serialization.DataContract]
[System.Runtime.Serialization.KnownType(typeof(System.ServiceModel.Dispatcher.ActionMessageFilter))]
[System.Runtime.Serialization.KnownType(typeof(System.ServiceModel.Dispatcher.XPathMessageFilter))]
[System.Runtime.Serialization.KnownType(typeof(System.ServiceModel.Dispatcher.MatchAllMessageFilter))]
[System.Runtime.Serialization.KnownType(typeof(System.ServiceModel.Dispatcher.MatchNoneMessageFilter))]
public abstract class MessageFilter
[<System.Runtime.Serialization.DataContract>]
[<System.Runtime.Serialization.KnownType(typeof(System.ServiceModel.Dispatcher.ActionMessageFilter))>]
[<System.Runtime.Serialization.KnownType(typeof(System.ServiceModel.Dispatcher.XPathMessageFilter))>]
[<System.Runtime.Serialization.KnownType(typeof(System.ServiceModel.Dispatcher.MatchAllMessageFilter))>]
[<System.Runtime.Serialization.KnownType(typeof(System.ServiceModel.Dispatcher.MatchNoneMessageFilter))>]
type MessageFilter = class
Public MustInherit Class MessageFilter
- 상속
-
MessageFilter
- 파생
- 특성
설명
MessageFilter는 메시지 검사에 사용할 기준을 지정하기 위해 개발자가 구현하는 abstract
클래스입니다. 일반적으로 필터는 엔드포인트 애플리케이션에서 일부 메시지 부분에 대한 검사를 기반으로 메시지에 대해 수행할 작업을 결정하는 데 사용됩니다. 예를 들어, 큐 프로세스에서는 XPath 1.0 쿼리를 사용하여 알려진 헤더의 우선 순위 요소를 검사함으로써 메시지를 큐의 앞으로 이동할지 여부를 결정할 수 있습니다.
필터는 IMessageFilterTable<TFilterData>을 구현하는 필터 테이블에 저장됩니다. 테이블의 각 필터는 메시지가 필터와 일치할 경우에 수행할 작업을 나타내는 데 사용할 수 있는 지정된 필터 데이터에 연결됩니다. Match 메서드는 메시지가 필터를 충족하는지 확인하는 데 사용됩니다.
필터 테이블에서는 변경 여부를 확인할 수 없으므로 필터를 만든 후에는 필터에 사용되는 조건을 변경할 수 없습니다. 필터 조건을 수정하려면 새 필터를 만든 다음 기존 필터를 삭제해야 합니다.
다음 클래스는 클래스를 구현합니다 abstract
MessageFilter .
XPathMessageFilter - XPath 1.0 식을 사용하여 일치 조건을 지정합니다.
MatchAllMessageFilter - 모든 메시지와 일치합니다.
MatchNoneMessageFilter - 어떤 메시지와도 일치하지 않습니다.
ActionMessageFilter - 메시지 동작이 지정된 동작 집합 중 하나인지 여부를 테스트합니다.
EndpointAddressMessageFilter - 메시지가 지정된 엔드포인트 주소를 충족하는지 여부를 테스트합니다.
ChannelListenerBase<TChannel> - 큐에 없는 수신기를 작성하는 데 사용할 수 있는 abstract
기본 클래스입니다.
생성자
MessageFilter() |
파생 클래스에서 호출되는 경우 MessageFilter 클래스의 새 인스턴스를 초기화합니다. |
메서드
CreateFilterTable<FilterData>() |
지정된 유형의 데이터가 연결된 필터에 대한 필터 테이블을 만듭니다. |
Equals(Object) |
지정된 개체가 현재 개체와 같은지 확인합니다. (다음에서 상속됨 Object) |
GetHashCode() |
기본 해시 함수로 작동합니다. (다음에서 상속됨 Object) |
GetType() |
현재 인스턴스의 Type을 가져옵니다. (다음에서 상속됨 Object) |
Match(Message) |
파생 클래스에서 재정의된 경우 메시지가 필터 기준을 충족하는지 여부를 테스트합니다. 본문은 검사할 수 없습니다. |
Match(MessageBuffer) |
파생 클래스에서 재정의된 경우 버퍼링된 메시지가 필터 기준을 충족하는지 여부를 테스트합니다. |
MemberwiseClone() |
현재 Object의 단순 복사본을 만듭니다. (다음에서 상속됨 Object) |
ToString() |
현재 개체를 나타내는 문자열을 반환합니다. (다음에서 상속됨 Object) |