MessageFilterTable<TFilterData> MessageFilterTable<TFilterData> MessageFilterTable<TFilterData> MessageFilterTable<TFilterData> Class

Определение

Предоставляется информация по общему применению таблицы фильтров.Provides the generic implementation of a filter table.

generic <typename TFilterData>
public ref class MessageFilterTable : System::Collections::Generic::ICollection<System::Collections::Generic::KeyValuePair<System::ServiceModel::Dispatcher::MessageFilter ^, TFilterData>>, System::Collections::Generic::IDictionary<System::ServiceModel::Dispatcher::MessageFilter ^, TFilterData>, System::Collections::Generic::IEnumerable<System::Collections::Generic::KeyValuePair<System::ServiceModel::Dispatcher::MessageFilter ^, TFilterData>>, System::ServiceModel::Dispatcher::IMessageFilterTable<TFilterData>
[System.Runtime.Serialization.DataContract]
public class MessageFilterTable<TFilterData> : System.Collections.Generic.ICollection<System.Collections.Generic.KeyValuePair<System.ServiceModel.Dispatcher.MessageFilter,TFilterData>>, System.Collections.Generic.IDictionary<System.ServiceModel.Dispatcher.MessageFilter,TFilterData>, System.Collections.Generic.IEnumerable<System.Collections.Generic.KeyValuePair<System.ServiceModel.Dispatcher.MessageFilter,TFilterData>>, System.ServiceModel.Dispatcher.IMessageFilterTable<TFilterData>
type MessageFilterTable<'FilterData> = class
    interface IMessageFilterTable<'FilterData>
    interface IDictionary<MessageFilter, 'FilterData>
    interface ICollection<KeyValuePair<MessageFilter, 'FilterData>>
    interface seq<KeyValuePair<MessageFilter, 'FilterData>>
    interface IEnumerable
Public Class MessageFilterTable(Of TFilterData)
Implements ICollection(Of KeyValuePair(Of MessageFilter, TFilterData)), IDictionary(Of MessageFilter, TFilterData), IEnumerable(Of KeyValuePair(Of MessageFilter, TFilterData)), IMessageFilterTable(Of TFilterData)

Параметры типа

TFilterData

Тип FilterData , связанный с фильтром.The type of the FilterData associated with the filter.

Наследование
MessageFilterTable<TFilterData>MessageFilterTable<TFilterData>MessageFilterTable<TFilterData>MessageFilterTable<TFilterData>
Атрибуты
Реализации

Комментарии

Объект MessageFilterTable<TFilterData> принимает фильтры любого типа.A MessageFilterTable<TFilterData> accepts filters of any type. Он группирует их во внутренние таблицы, содержащие все фильтры заданного типа.It groups them internally into tables that contain all the filters of a given type. При добавлении фильтр помещается во внутреннюю таблицу фильтров, если она уже существует, содержащую фильтры этого типа.When a filter is added, it is put into an internal filter table, if one already exists, which contains filters of its type. Если такой таблицы не существует, то вызывается метод CreateFilterTable для выделения новой таблицы фильтров соответствующего типа.If no such table exists, CreateFilterTable is called to allocate a new filter table of the appropriate type. Вызов метода CreateFilterTable является операцией по умолчанию.Its default operation is to call CreateFilterTable.

Это поведение по умолчанию можно изменить, если явно задать тип таблицы фильтра, связанной с типом фильтра.This default behavior can be overridden to explicitly specify the type of filter table associated with a type of filter. При первом добавлении типа фильтра в таблицу создается тип таблицы фильтров, постоянно связанный с типом фильтра.The first time a filter type is added to the table, the filter table type created is permanently associated with the filter type.

Приоритетом является целое число, используемое для группировки фильтров в блок приоритетов и упорядочения их обработки.The priority is an integer value used to group filters into priority buckets and order their processing. Чем больше значение целого числа, присвоенного типу фильтра, тем выше его приоритет при обработке.The larger the integer assigned to a filter type, the higher its priority for processing. Все таблицы фильтров в сегменте приоритетов вычисляются вместе.All the filter tables in a priority bucket are evaluated together. Сегменты с низким приоритетом вычисляются только в случае, если для сегментов высокого приоритета не обнаружено совпадений.Lower priority buckets are only evaluated if higher priority buckets do not provide any matches. Таблица фильтров присваивает приоритет по умолчанию, который устанавливается для всех добавляемых фильтров.A filter table assigns a default priority that can be set to filters being added.

Конструкторы

MessageFilterTable<TFilterData>() MessageFilterTable<TFilterData>() MessageFilterTable<TFilterData>() MessageFilterTable<TFilterData>()

Инициализирует новый экземпляр класса MessageFilterTable<TFilterData> с приоритетом по умолчанию 0.Initializes a new instance of the MessageFilterTable<TFilterData> class with a default priority of 0.

MessageFilterTable<TFilterData>(Int32) MessageFilterTable<TFilterData>(Int32) MessageFilterTable<TFilterData>(Int32) MessageFilterTable<TFilterData>(Int32)

Инициализирует новый экземпляр класса MessageFilterTable<TFilterData> с исходным приоритетом, заданным по умолчанию.Initializes a new instance of the MessageFilterTable<TFilterData> class with the specified initial default priority.

Свойства

Count Count Count Count

Получает количество пар фильтр/FilterData, находящихся в таблице фильтров.Gets the number of filter/FilterData pairs in the filter table.

DefaultPriority DefaultPriority DefaultPriority DefaultPriority

Получает или задает для таблицы фильтров приоритет по умолчанию.Gets or sets the default priority for the filter table.

IsReadOnly IsReadOnly IsReadOnly IsReadOnly

Получает значение, указывающее, доступен ли фильтр только для чтения.Gets a value that indicates whether the filter table is read-only.

Item[MessageFilter] Item[MessageFilter] Item[MessageFilter] Item[MessageFilter]

Получает или задает данные фильтра, связанные с указанным параметром filter.Gets or sets the filter data associated with the specified filter.

Keys Keys Keys Keys

Получает коллекцию всех фильтров, содержащихся в таблице фильтров.Gets a collection of all the filters contained in the filter table.

Values Values Values Values

Получает коллекцию всех параметров FilterData, содержащихся в таблице фильтров.Gets a collection of all the FilterData contained in the filter table.

Методы

Add(KeyValuePair<MessageFilter,TFilterData>) Add(KeyValuePair<MessageFilter,TFilterData>) Add(KeyValuePair<MessageFilter,TFilterData>) Add(KeyValuePair<MessageFilter,TFilterData>)

Добавляет пару «фильтр/FilterData» (ключ-значение) в таблицу фильтров.Adds a filter/FilterData (key/value) pair to the filter table.

Add(MessageFilter, TFilterData) Add(MessageFilter, TFilterData) Add(MessageFilter, TFilterData) Add(MessageFilter, TFilterData)

Добавляет фильтр и сопоставленные FilterData в таблицу фильтров.Adds a filter and its associated FilterData to the filter table.

Add(MessageFilter, TFilterData, Int32) Add(MessageFilter, TFilterData, Int32) Add(MessageFilter, TFilterData, Int32) Add(MessageFilter, TFilterData, Int32)

Добавляет фильтр и сопоставленные ему FilterData в таблицу фильтров действий с указанным приоритетом.Adds a filter and its associated FilterData to the action filter table with a specified priority.

Clear() Clear() Clear() Clear()

Удаляет все фильтры и сопоставленные им данные фильтра из таблицы фильтров.Removes all filters and their associated data from the filter table.

Contains(KeyValuePair<MessageFilter,TFilterData>) Contains(KeyValuePair<MessageFilter,TFilterData>) Contains(KeyValuePair<MessageFilter,TFilterData>) Contains(KeyValuePair<MessageFilter,TFilterData>)

Определяет, содержит ли таблица фильтров указанный фильтр и соответствующий ему параметр FilterData.Determines whether the filter table contains a specified filter and its associated FilterData.

ContainsKey(MessageFilter) ContainsKey(MessageFilter) ContainsKey(MessageFilter) ContainsKey(MessageFilter)

Определяет, содержит ли таблица фильтров указанный фильтр.Determines whether the filter table contains a specified filter.

CopyTo(KeyValuePair<MessageFilter,TFilterData>[], Int32) CopyTo(KeyValuePair<MessageFilter,TFilterData>[], Int32) CopyTo(KeyValuePair<MessageFilter,TFilterData>[], Int32) CopyTo(KeyValuePair<MessageFilter,TFilterData>[], Int32)

Копирует пары «фильтр/FilterData» в массив, начинающийся с указанного индекса.Copies the filter/FilterData pairs to an array that starts at a specified index.

CreateFilterTable(MessageFilter) CreateFilterTable(MessageFilter) CreateFilterTable(MessageFilter) CreateFilterTable(MessageFilter)

Приписывает таблице фильтров указанный тип фильтров.Instantiates a filter table for a specified type of filter.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Определяет, равен ли заданный объект текущему объекту.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetEnumerator() GetEnumerator() GetEnumerator() GetEnumerator()

Возвращает перечислитель, выполняющий итерацию по таблице фильтров.Returns an enumerator that iterates through the filter table.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Служит хэш-функцией по умолчанию.Serves as the default hash function.

(Inherited from Object)
GetMatchingFilter(Message, MessageFilter) GetMatchingFilter(Message, MessageFilter) GetMatchingFilter(Message, MessageFilter) GetMatchingFilter(Message, MessageFilter)

Возвращает значение, указывающее, удовлетворяет ли заданное сообщение критерию соответствия одного фильтра, и возвращает этот фильтр в параметре out.Returns a value that indicates whether the match criterion of exactly one filter in the table is satisfied by the specified message and returns that filter in an out parameter.

GetMatchingFilter(MessageBuffer, MessageFilter) GetMatchingFilter(MessageBuffer, MessageFilter) GetMatchingFilter(MessageBuffer, MessageFilter) GetMatchingFilter(MessageBuffer, MessageFilter)

Возвращает значение, указывающее, удовлетворяет ли заданное сообщение критерию соответствия одного фильтра, и возвращает этот фильтр в параметре out.Returns a value that indicates whether the match criterion of exactly one filter in the table is satisfied by the specified message and returns that filter in an out parameter.

GetMatchingFilters(Message, ICollection<MessageFilter>) GetMatchingFilters(Message, ICollection<MessageFilter>) GetMatchingFilters(Message, ICollection<MessageFilter>) GetMatchingFilters(Message, ICollection<MessageFilter>)

Возвращает значение, указывающее, удовлетворяет ли заданное сообщение критерию соответствия хотя бы одного объекта MessageFilter, и добавляет соответствующие фильтры в коллекцию.Returns a value that indicates whether the match criterion of an MessageFilter in the table is satisfied by the specified message, and adds the matching filters to a collection.

GetMatchingFilters(MessageBuffer, ICollection<MessageFilter>) GetMatchingFilters(MessageBuffer, ICollection<MessageFilter>) GetMatchingFilters(MessageBuffer, ICollection<MessageFilter>) GetMatchingFilters(MessageBuffer, ICollection<MessageFilter>)

Возвращает значение, указывающее, удовлетворяет ли заданное буферизованное сообщение критерию соответствия хотя бы одного фильтра, и добавляет соответствующие критериям фильтры из блока наивысших приоритетов фильтров, в котором найдено хотя бы одно соответствие, в коллекцию.Returns a value that indicates whether the match criterion of at least one filter in the table is satisfied by the specified buffered message and adds the matching filters from the highest priority set of filters in which at least one match is found to a collection.

GetMatchingValue(Message, TFilterData) GetMatchingValue(Message, TFilterData) GetMatchingValue(Message, TFilterData) GetMatchingValue(Message, TFilterData)

Возвращает значение, указывающее, удовлетворяет ли заданное сообщение критерию соответствия одного объекта MessageFilter, и добавляет соответствующие данные фильтра в коллекцию.Returns a value that indicates whether the match criterion of exactly one MessageFilter in the table is satisfied by the specified message and adds the matching filter data to a collection.

GetMatchingValue(MessageBuffer, TFilterData) GetMatchingValue(MessageBuffer, TFilterData) GetMatchingValue(MessageBuffer, TFilterData) GetMatchingValue(MessageBuffer, TFilterData)

Возвращает значение, указывающее, удовлетворяет ли заданное буферизованное сообщение критерию соответствия одного фильтра, и добавляет соответствующие данные фильтра в коллекцию.Returns a value that indicates whether the match criterion of exactly one filter in the table is satisfied by the specified buffered message and adds the matching filter data to a collection.

GetMatchingValues(Message, ICollection<TFilterData>) GetMatchingValues(Message, ICollection<TFilterData>) GetMatchingValues(Message, ICollection<TFilterData>) GetMatchingValues(Message, ICollection<TFilterData>)

Возвращает значение, указывающее, удовлетворяет ли заданное или буферизованное сообщение критерию соответствия хотя бы одного фильтра, и добавляет параметр FilterData фильтров, для которых имеется соответствие, в коллекцию.Returns a value that indicates whether the match criterion of at least one filter in the table is satisfied by the specified message or buffered message and adds the FilterData of the matching filters to a collection.

GetMatchingValues(MessageBuffer, ICollection<TFilterData>) GetMatchingValues(MessageBuffer, ICollection<TFilterData>) GetMatchingValues(MessageBuffer, ICollection<TFilterData>) GetMatchingValues(MessageBuffer, ICollection<TFilterData>)

Возвращает значение, указывающее, удовлетворяет ли заданное буферизованное сообщение критерию соответствия одного фильтра, и добавляет параметр FilterData найденных фильтров в коллекцию results.Returns a value that indicates whether the match criterion of exactly one filter in the table is satisfied by the specified message buffer and adds the FilterData of the matching filters to the results collection.

GetPriority(MessageFilter) GetPriority(MessageFilter) GetPriority(MessageFilter) GetPriority(MessageFilter)

Возвращает приоритет конкретного фильтра в таблице.Returns the priority of a given filter in the table.

GetType() GetType() GetType() GetType()

Возвращает объект Type для текущего экземпляра.Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Создает неполную копию текущего объекта Object.Creates a shallow copy of the current Object.

(Inherited from Object)
Remove(KeyValuePair<MessageFilter,TFilterData>) Remove(KeyValuePair<MessageFilter,TFilterData>) Remove(KeyValuePair<MessageFilter,TFilterData>) Remove(KeyValuePair<MessageFilter,TFilterData>)

Удаляет указанную пару «фильтр/FilterData» из таблицы фильтров.Removes a specified filter/FilterData pair from the filter table.

Remove(MessageFilter) Remove(MessageFilter) Remove(MessageFilter) Remove(MessageFilter)

Удаляет фильтр и сопоставленный ему параметр FilterData из таблицы фильтров.Removes a filter and its associated FilterData from the filter table.

ToString() ToString() ToString() ToString()

Возвращает строку, представляющую текущий объект.Returns a string that represents the current object.

(Inherited from Object)
TryGetValue(MessageFilter, TFilterData) TryGetValue(MessageFilter, TFilterData) TryGetValue(MessageFilter, TFilterData) TryGetValue(MessageFilter, TFilterData)

Проверяет, хранится ли фильтр в таблице фильтров.Checks whether a filter is stored in the filter table.

Явные реализации интерфейса

IEnumerable.GetEnumerator() IEnumerable.GetEnumerator() IEnumerable.GetEnumerator() IEnumerable.GetEnumerator()

Возвращает перечислитель, выполняющий итерацию по таблице фильтров.Returns an enumerator that iterates through the filter table.

Методы расширения

CopyToDataTable<T>(IEnumerable<T>) CopyToDataTable<T>(IEnumerable<T>) CopyToDataTable<T>(IEnumerable<T>) CopyToDataTable<T>(IEnumerable<T>)

Возвращает объект DataTable, содержащий копии объектов DataRow при заданном входном объекте IEnumerable<T> и универсальном параметре T, равном DataRow.Returns a DataTable that contains copies of the DataRow objects, given an input IEnumerable<T> object where the generic parameter T is DataRow.

CopyToDataTable<T>(IEnumerable<T>, DataTable, LoadOption) CopyToDataTable<T>(IEnumerable<T>, DataTable, LoadOption) CopyToDataTable<T>(IEnumerable<T>, DataTable, LoadOption) CopyToDataTable<T>(IEnumerable<T>, DataTable, LoadOption)

Копирует объекты DataRow в указанный объект DataTable с заданным входным объектом IEnumerable<T>, где универсальный параметр T имеет значение DataRow.Copies DataRow objects to the specified DataTable, given an input IEnumerable<T> object where the generic parameter T is DataRow.

CopyToDataTable<T>(IEnumerable<T>, DataTable, LoadOption, FillErrorEventHandler) CopyToDataTable<T>(IEnumerable<T>, DataTable, LoadOption, FillErrorEventHandler) CopyToDataTable<T>(IEnumerable<T>, DataTable, LoadOption, FillErrorEventHandler) CopyToDataTable<T>(IEnumerable<T>, DataTable, LoadOption, FillErrorEventHandler)

Копирует объекты DataRow в указанный объект DataTable с заданным входным объектом IEnumerable<T>, где универсальный параметр T имеет значение DataRow.Copies DataRow objects to the specified DataTable, given an input IEnumerable<T> object where the generic parameter T is DataRow.

Cast<TResult>(IEnumerable) Cast<TResult>(IEnumerable) Cast<TResult>(IEnumerable) Cast<TResult>(IEnumerable)

Приводит элементы объекта IEnumerable к заданному типу.Casts the elements of an IEnumerable to the specified type.

OfType<TResult>(IEnumerable) OfType<TResult>(IEnumerable) OfType<TResult>(IEnumerable) OfType<TResult>(IEnumerable)

Выполняет фильтрацию элементов объекта IEnumerable по заданному типу.Filters the elements of an IEnumerable based on a specified type.

AsParallel(IEnumerable) AsParallel(IEnumerable) AsParallel(IEnumerable) AsParallel(IEnumerable)

Позволяет осуществлять параллельный запрос.Enables parallelization of a query.

AsQueryable(IEnumerable) AsQueryable(IEnumerable) AsQueryable(IEnumerable) AsQueryable(IEnumerable)

Преобразовывает коллекцию IEnumerable в объект IQueryable.Converts an IEnumerable to an IQueryable.

Ancestors<T>(IEnumerable<T>) Ancestors<T>(IEnumerable<T>) Ancestors<T>(IEnumerable<T>) Ancestors<T>(IEnumerable<T>)

Возвращает коллекцию элементов, содержащую предков каждого узла в исходной коллекции.Returns a collection of elements that contains the ancestors of every node in the source collection.

Ancestors<T>(IEnumerable<T>, XName) Ancestors<T>(IEnumerable<T>, XName) Ancestors<T>(IEnumerable<T>, XName) Ancestors<T>(IEnumerable<T>, XName)

Возвращает отфильтрованную коллекцию элементов, содержащую предков каждого узла в исходной коллекции.Returns a filtered collection of elements that contains the ancestors of every node in the source collection. В коллекцию включаются только элементы, соответствующие XName.Only elements that have a matching XName are included in the collection.

DescendantNodes<T>(IEnumerable<T>) DescendantNodes<T>(IEnumerable<T>) DescendantNodes<T>(IEnumerable<T>) DescendantNodes<T>(IEnumerable<T>)

Возвращает коллекцию подчиненных узлов каждого документа и элемента в исходной коллекции.Returns a collection of the descendant nodes of every document and element in the source collection.

Descendants<T>(IEnumerable<T>) Descendants<T>(IEnumerable<T>) Descendants<T>(IEnumerable<T>) Descendants<T>(IEnumerable<T>)

Возвращает коллекцию элементов, содержащую подчиненные элементы каждого элемента и документа в исходной коллекции.Returns a collection of elements that contains the descendant elements of every element and document in the source collection.

Descendants<T>(IEnumerable<T>, XName) Descendants<T>(IEnumerable<T>, XName) Descendants<T>(IEnumerable<T>, XName) Descendants<T>(IEnumerable<T>, XName)

Возвращает отфильтрованную коллекцию элементов, содержащую подчиненные элементы каждого элемента и документа в исходной коллекции.Returns a filtered collection of elements that contains the descendant elements of every element and document in the source collection. В коллекцию включаются только элементы, соответствующие XName.Only elements that have a matching XName are included in the collection.

Elements<T>(IEnumerable<T>) Elements<T>(IEnumerable<T>) Elements<T>(IEnumerable<T>) Elements<T>(IEnumerable<T>)

Возвращает коллекцию дочерних элементов каждого элемента и документа в исходной коллекции.Returns a collection of the child elements of every element and document in the source collection.

Elements<T>(IEnumerable<T>, XName) Elements<T>(IEnumerable<T>, XName) Elements<T>(IEnumerable<T>, XName) Elements<T>(IEnumerable<T>, XName)

Возвращает отфильтрованную коллекцию дочерних элементов каждого элемента и документа в исходной коллекции.Returns a filtered collection of the child elements of every element and document in the source collection. В коллекцию включаются только элементы, соответствующие XName.Only elements that have a matching XName are included in the collection.

InDocumentOrder<T>(IEnumerable<T>) InDocumentOrder<T>(IEnumerable<T>) InDocumentOrder<T>(IEnumerable<T>) InDocumentOrder<T>(IEnumerable<T>)

Возвращает коллекцию узлов, содержащую все узлы в исходной коллекции, отсортированные в порядке следования документов.Returns a collection of nodes that contains all nodes in the source collection, sorted in document order.

Nodes<T>(IEnumerable<T>) Nodes<T>(IEnumerable<T>) Nodes<T>(IEnumerable<T>) Nodes<T>(IEnumerable<T>)

Возвращает коллекцию дочерних узлов каждого документа и элемента в исходной коллекции.Returns a collection of the child nodes of every document and element in the source collection.

Remove<T>(IEnumerable<T>) Remove<T>(IEnumerable<T>) Remove<T>(IEnumerable<T>) Remove<T>(IEnumerable<T>)

Удаление каждого узла в исходной коллекции из родительского узла.Removes every node in the source collection from its parent node.

Применяется к