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>()

기본 우선 순위 0을 사용하여 MessageFilterTable<TFilterData> 클래스의 새 인스턴스를 초기화합니다.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>)

지정된 메시지 버퍼가 테이블에서 정확히 한 필터의 일치 조건을 충족하는지 여부를 나타내는 값을 반환하고, 일치하는 필터의 FilterDataresults 컬렉션에 추가합니다.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>)

제네릭 매개 변수 TDataTable인 지정된 입력 DataRow 개체를 사용하여 IEnumerable<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)

제네릭 매개 변수 TDataRow인 지정된 입력 DataTable 개체를 사용하여 IEnumerable<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)

제네릭 매개 변수 TDataRow인 지정된 입력 DataTable 개체를 사용하여 IEnumerable<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)

IEnumerableIQueryable로 변환합니다.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.

적용 대상