MessageFilter.Match 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
파생 클래스에서 재정의된 경우 메시지 또는 버퍼링된 메시지가 필터 기준을 충족하는지 여부를 테스트합니다.
오버로드
Match(Message) |
파생 클래스에서 재정의된 경우 메시지가 필터 기준을 충족하는지 여부를 테스트합니다. 본문은 검사할 수 없습니다. |
Match(MessageBuffer) |
파생 클래스에서 재정의된 경우 버퍼링된 메시지가 필터 기준을 충족하는지 여부를 테스트합니다. |
설명
두 오버로드 간의 차이점은 하나는 Message 매개 변수를 사용하고 본문을 검사할 수 없으며, 다른 하나는 MessageBuffer 매개 변수를 사용하고 메시지의 모든 부분을 검사할 수 있다는 점입니다. 메시지 헤더는 자동으로 버퍼링되므로 별도의 사용 없이도 필터를 통해 검사할 수 있습니다. 그러나 버퍼링되지 않은 메시지 본문이 쿼리에 사용되면 그 내용이 제거되므로 필터를 사용하여 본문을 검사하려면 전체 메시지를 버퍼링해야 합니다.
본문을 검사할 필요가 없으면 Match를 사용합니다. 메시지 본문을 검사해야 하면 Match를 사용합니다.
Match(Message)
파생 클래스에서 재정의된 경우 메시지가 필터 기준을 충족하는지 여부를 테스트합니다. 본문은 검사할 수 없습니다.
public:
abstract bool Match(System::ServiceModel::Channels::Message ^ message);
public abstract bool Match (System.ServiceModel.Channels.Message message);
abstract member Match : System.ServiceModel.Channels.Message -> bool
Public MustOverride Function Match (message As Message) As Boolean
매개 변수
반환
true
개체가 필터 조건을 충족하면 Message이고, 그렇지 않으면 false
입니다.
설명
이 메서드는 메시지 본문의 내용을 검사할 수 없습니다.
구현자 참고
이 필터가 버퍼링되지 않은 메시지의 본문을 검사하려 할 경우 InvalidBodyAccessException가 throw되며, false
가 반환되지 않습니다.
적용 대상
Match(MessageBuffer)
파생 클래스에서 재정의된 경우 버퍼링된 메시지가 필터 기준을 충족하는지 여부를 테스트합니다.
public:
abstract bool Match(System::ServiceModel::Channels::MessageBuffer ^ buffer);
public abstract bool Match (System.ServiceModel.Channels.MessageBuffer buffer);
abstract member Match : System.ServiceModel.Channels.MessageBuffer -> bool
Public MustOverride Function Match (buffer As MessageBuffer) As Boolean
매개 변수
- buffer
- MessageBuffer
테스트할 MessageBuffer 개체입니다.
반환
true
개체가 필터 조건을 충족하면 MessageBuffer이고, 그렇지 않으면 false
입니다.
설명
필터에서 본문을 검사하려면 메시지 전체를 버퍼링해야 합니다. MessageBuffer의 본문은 전체적으로 버퍼링되므로 필터를 통해 검사할 수 있습니다. 전체적으로 버퍼링되지 않은 Message 본문은 필터 검사에 사용될 수 있습니다. Message의 헤더 요소는 자동으로 버퍼링되므로 별도의 사용 없이도 검사할 수 있습니다.