次の方法で共有


XPathMessageFilterTable<TFilterData>.GetMatchingFilters メソッド

定義

指定した XML ドキュメントがテーブル内のフィルターの一致条件を満たすかどうかを示す値を返し、一致するフィルターをコレクションに追加します。

オーバーロード

GetMatchingFilters(SeekableXPathNavigator, ICollection<MessageFilter>)

指定したバッファー内のメッセージがテーブル内の少なくとも 1 つの SeekableXPathNavigator の一致条件を満たしているかどうかを示す値を返し、一致するフィルターをコレクションに追加します。

GetMatchingFilters(XPathNavigator, ICollection<MessageFilter>)

指定したバッファー内のメッセージがテーブル内の少なくとも 1 つの XPathNavigator の一致条件を満たしているかどうかを示す値を返し、一致するフィルターをコレクションに追加します。

GetMatchingFilters(Message, ICollection<MessageFilter>)

指定したメッセージがテーブル内の少なくとも 1 つの XPathMessageFilter の一致条件を満たしているかどうかを示す値を返し、一致するフィルターをコレクションに追加します。

GetMatchingFilters(MessageBuffer, ICollection<MessageFilter>)

指定したバッファー内のメッセージがテーブル内の少なくとも 1 つの XPathMessageFilter の一致条件を満たしているかどうかを示す値を返し、一致するフィルターをコレクションに追加します。

注釈

2 つ以上のフィルターがメッセージに一致すると推測され、一致するフィルターが必要な場合は、このメソッドを使用します。

GetMatchingFilters(SeekableXPathNavigator, ICollection<MessageFilter>)

指定したバッファー内のメッセージがテーブル内の少なくとも 1 つの SeekableXPathNavigator の一致条件を満たしているかどうかを示す値を返し、一致するフィルターをコレクションに追加します。

public:
 bool GetMatchingFilters(System::ServiceModel::Dispatcher::SeekableXPathNavigator ^ navigator, System::Collections::Generic::ICollection<System::ServiceModel::Dispatcher::MessageFilter ^> ^ results);
public bool GetMatchingFilters (System.ServiceModel.Dispatcher.SeekableXPathNavigator navigator, System.Collections.Generic.ICollection<System.ServiceModel.Dispatcher.MessageFilter> results);
member this.GetMatchingFilters : System.ServiceModel.Dispatcher.SeekableXPathNavigator * System.Collections.Generic.ICollection<System.ServiceModel.Dispatcher.MessageFilter> -> bool
Public Function GetMatchingFilters (navigator As SeekableXPathNavigator, results As ICollection(Of MessageFilter)) As Boolean

パラメーター

navigator
SeekableXPathNavigator

テスト対象の SeekableXPathNavigator

results
ICollection<MessageFilter>

ICollection<T> <Filter> に一致する MessageFilter オブジェクトを格納する参照パラメーター。

戻り値

true がテーブル内の少なくとも 1 つのフィルターの一致条件を満たしている場合は messageBuffer、どのフィルター条件も満たしていない場合は false

例外

navigator または resultsnull です。

注釈

2 つ以上のフィルターがナビゲーターに一致すると推測され、一致するフィルターが必要な場合は、このメソッドを使用します。

1 つのフィルターのみがメッセージに一致すると予測される場合は、GetMatchingFilter メソッドを使用します。

適用対象

GetMatchingFilters(XPathNavigator, ICollection<MessageFilter>)

指定したバッファー内のメッセージがテーブル内の少なくとも 1 つの XPathNavigator の一致条件を満たしているかどうかを示す値を返し、一致するフィルターをコレクションに追加します。

public:
 bool GetMatchingFilters(System::Xml::XPath::XPathNavigator ^ navigator, System::Collections::Generic::ICollection<System::ServiceModel::Dispatcher::MessageFilter ^> ^ results);
public bool GetMatchingFilters (System.Xml.XPath.XPathNavigator navigator, System.Collections.Generic.ICollection<System.ServiceModel.Dispatcher.MessageFilter> results);
member this.GetMatchingFilters : System.Xml.XPath.XPathNavigator * System.Collections.Generic.ICollection<System.ServiceModel.Dispatcher.MessageFilter> -> bool
Public Function GetMatchingFilters (navigator As XPathNavigator, results As ICollection(Of MessageFilter)) As Boolean

パラメーター

navigator
XPathNavigator

テスト対象の XPathNavigator

results
ICollection<MessageFilter>

ICollection<T> <Filter> に一致する MessageFilter オブジェクトを格納する参照パラメーター。

戻り値

true がテーブル内の少なくとも 1 つのフィルターの一致条件を満たしている場合は messageBuffer、どのフィルター条件も満たしていない場合は false

例外

navigator または resultsnull です。

注釈

複数のフィルターが XPathNavigator によって指定されたメッセージに一致すると推測され、一致するフィルターが必要な場合に、このメソッドを使用します。

1 つのフィルターのみがメッセージに一致すると予測される場合は、GetMatchingFilter メソッドを使用します。

適用対象

GetMatchingFilters(Message, ICollection<MessageFilter>)

指定したメッセージがテーブル内の少なくとも 1 つの XPathMessageFilter の一致条件を満たしているかどうかを示す値を返し、一致するフィルターをコレクションに追加します。

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> <Filter> に一致する MessageFilter オブジェクトを格納する参照パラメーター。

戻り値

true がテーブル内の少なくとも 1 つのフィルターの一致条件を満たしている場合は message、どのフィルター条件も満たしていない場合は false

実装

例外

message または resultsnull です。

フィルターがメッセージ本文の内容を検査しようとしました。

注釈

2 つ以上のフィルターがメッセージに一致すると推測され、一致するフィルターが必要な場合は、このメソッドを使用します。

テーブル内のフィルターは、メッセージ本文を検査できません。

一致する XPathMessageFilter オブジェクトは、resultsICollection<T> パラメーターに格納されます。 これで、該当するフィルターをキーとして指定し、FilterData によって提供されているメソッドを使用して、IDictionary<TKey,TValue> をフィルター テーブルから復元できます。

このメソッドは、GetMatchingFilters を実装します。

適用対象

GetMatchingFilters(MessageBuffer, ICollection<MessageFilter>)

指定したバッファー内のメッセージがテーブル内の少なくとも 1 つの XPathMessageFilter の一致条件を満たしているかどうかを示す値を返し、一致するフィルターをコレクションに追加します。

public:
 virtual bool GetMatchingFilters(System::ServiceModel::Channels::MessageBuffer ^ messageBuffer, System::Collections::Generic::ICollection<System::ServiceModel::Dispatcher::MessageFilter ^> ^ results);
public bool GetMatchingFilters (System.ServiceModel.Channels.MessageBuffer messageBuffer, 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 (messageBuffer As MessageBuffer, results As ICollection(Of MessageFilter)) As Boolean

パラメーター

messageBuffer
MessageBuffer

テスト対象の MessageBuffer

results
ICollection<MessageFilter>

ICollection<T> <Filter> に一致する MessageFilter オブジェクトを格納する参照パラメーター。

戻り値

true がテーブル内の少なくとも 1 つのフィルターの一致条件を満たしている場合は messageBuffer、どのフィルター条件も満たしていない場合は false

実装

例外

messageBuffer または resultsnull です。

注釈

2 つ以上のフィルターがバッファー内のメッセージに一致すると推測され、一致するフィルターが必要な場合は、このメソッドを使用します。

テーブル内のフィルターは、メッセージ本文を検査できます。

一致する MessageFilter オブジェクトは、resultsICollection<T> パラメーターに格納されます。 これで、該当するフィルターをキーとして指定し、FilterData によって提供されているメソッドを使用して、IDictionary<TKey,TValue> をフィルター テーブルから復元できます。

このメソッドは、GetMatchingFilters を実装します。

適用対象