MessageFilterTable<TFilterData>.GetMatchingFilters 메서드

정의

지정한 메시지 또는 버퍼링된 메시지가 테이블에서 한 MessageFilter의 일치 조건을 충족하는지 여부를 나타내는 값을 반환하고 일치하는 필터를 컬렉션에 추가합니다.

오버로드

GetMatchingFilters(Message, ICollection<MessageFilter>)

지정된 메시지가 테이블에서 한 MessageFilter의 일치 조건을 충족하는지 여부를 나타내는 값을 반환하고 일치하는 필터를 컬렉션에 추가합니다.

GetMatchingFilters(MessageBuffer, ICollection<MessageFilter>)

지정한 버퍼링된 메시지가 테이블에 있는 필터 중 적어도 하나의 일치 조건을 충족하는지 여부를 나타내는 값을 반환하고, 일치하는 항목이 하나 이상 있는 우선 순위가 가장 높은 필터 집합의 일치하는 필터를 컬렉션에 추가합니다.

설명

메시지와 일치하도록 두 개 이상의 필터가 있어야 하고 일치하는 필터가 필요한 경우 이 메서드를 사용하십시오.

GetMatchingFilters(Message, ICollection<MessageFilter>)

지정된 메시지가 테이블에서 한 MessageFilter의 일치 조건을 충족하는지 여부를 나타내는 값을 반환하고 일치하는 필터를 컬렉션에 추가합니다.

public:
 virtual bool GetMatchingFilters(System::ServiceModel::Channels::Message ^ message, System::Collections::Generic::ICollection<System::ServiceModel::Dispatcher::MessageFilter ^> ^ results);
public bool GetMatchingFilters (System.ServiceModel.Channels.Message message, System.Collections.Generic.ICollection<System.ServiceModel.Dispatcher.MessageFilter> results);
abstract member GetMatchingFilters : System.ServiceModel.Channels.Message * System.Collections.Generic.ICollection<System.ServiceModel.Dispatcher.MessageFilter> -> bool
override this.GetMatchingFilters : System.ServiceModel.Channels.Message * System.Collections.Generic.ICollection<System.ServiceModel.Dispatcher.MessageFilter> -> bool
Public Function GetMatchingFilters (message As Message, results As ICollection(Of MessageFilter)) As Boolean

매개 변수

message
Message

테스트할 Message입니다.

results
ICollection<MessageFilter>

ICollection<T><필터>와 일치하는 MessageFilter 개체를 저장하는 참조 매개 변수입니다.

반환

Boolean

message가 테이블에 있는 필터 중 적어도 한 MessageFilter의 일치 조건을 충족하면 true이고 조건을 충족하는 필터가 없으면 false입니다.

구현

예외

results이(가) null인 경우

필터에서 메시지 본문의 콘텐츠를 검사하려고 한 경우

설명

메시지와 일치하도록 두 개 이상의 필터가 있어야 하고 일치하는 필터가 필요한 경우 이 메서드를 사용하십시오.

이 메서드는 하나 이상의 일치가 발생하는 필터의 우선 순위가 가장 높은 버킷에서 일치하는 모든 필터를 테스트합니다.

테이블에 있는 필터는 메시지 본문을 검사할 수 없습니다.

일치하는 MessageFilter 개체는 resultsICollection<T> 매개 변수에 저장됩니다. 그런 다음 FilterData에서 제공하는 메서드를 통해 이러한 필터를 키로 사용하여 필터 테이블에서 IDictionary<TKey,TValue>를 복구할 수 있습니다.

이 메서드는 GetMatchingFilters를 구현합니다.

적용 대상

GetMatchingFilters(MessageBuffer, ICollection<MessageFilter>)

지정한 버퍼링된 메시지가 테이블에 있는 필터 중 적어도 하나의 일치 조건을 충족하는지 여부를 나타내는 값을 반환하고, 일치하는 항목이 하나 이상 있는 우선 순위가 가장 높은 필터 집합의 일치하는 필터를 컬렉션에 추가합니다.

public:
 virtual bool GetMatchingFilters(System::ServiceModel::Channels::MessageBuffer ^ buffer, System::Collections::Generic::ICollection<System::ServiceModel::Dispatcher::MessageFilter ^> ^ results);
public bool GetMatchingFilters (System.ServiceModel.Channels.MessageBuffer buffer, System.Collections.Generic.ICollection<System.ServiceModel.Dispatcher.MessageFilter> results);
abstract member GetMatchingFilters : System.ServiceModel.Channels.MessageBuffer * System.Collections.Generic.ICollection<System.ServiceModel.Dispatcher.MessageFilter> -> bool
override this.GetMatchingFilters : System.ServiceModel.Channels.MessageBuffer * System.Collections.Generic.ICollection<System.ServiceModel.Dispatcher.MessageFilter> -> bool
Public Function GetMatchingFilters (buffer As MessageBuffer, results As ICollection(Of MessageFilter)) As Boolean

매개 변수

buffer
MessageBuffer

테스트할 MessageBuffer입니다.

results
ICollection<MessageFilter>

ICollection<T><필터>와 일치하는 MessageFilter 개체를 저장하는 참조 매개 변수입니다.

반환

Boolean

message가 테이블에 있는 필터 중 적어도 하나의 일치 조건을 충족하면 true이고 조건을 충족하는 필터가 없으면 false입니다.

구현

예외

results이(가) null인 경우

설명

버퍼링된 메시지와 일치하는 여러 개의 필터가 예상되고 일치하는 필터가 필수적 요소인 경우 이 메서드를 사용합니다.

테이블에 있는 필터는 메시지 본문을 검사할 수 있습니다.

일치하는 MessageFilter 개체는 resultsICollection<T> 매개 변수에 저장됩니다. 그런 다음 FilterData에서 제공하는 메서드를 통해 이러한 필터를 키로 사용하여 필터 테이블에서 IDictionary<TKey,TValue>를 복구할 수 있습니다.

이 메서드는 GetMatchingFilters를 구현합니다.

적용 대상