ImmutableDictionary<TKey,TValue> Класс

Определение

Представляет неизменяемую неупорядоченную коллекцию ключей и значений.Represents an immutable, unordered collection of keys and values.

Пакет NuGet: System.Collections.Immutable (сведения о неизменяемых коллекциях и способах их установки)NuGet package: System.Collections.Immutable (about immutable collections and how to install)

generic <typename TKey, typename TValue>
public ref class ImmutableDictionary sealed : System::Collections::Generic::ICollection<System::Collections::Generic::KeyValuePair<TKey, TValue>>, System::Collections::Generic::IDictionary<TKey, TValue>, System::Collections::Generic::IEnumerable<System::Collections::Generic::KeyValuePair<TKey, TValue>>, System::Collections::Generic::IReadOnlyCollection<System::Collections::Generic::KeyValuePair<TKey, TValue>>, System::Collections::Generic::IReadOnlyDictionary<TKey, TValue>, System::Collections::IDictionary, System::Collections::Immutable::IImmutableDictionary<TKey, TValue>
public sealed class ImmutableDictionary<TKey,TValue> : System.Collections.Generic.ICollection<System.Collections.Generic.KeyValuePair<TKey,TValue>>, System.Collections.Generic.IDictionary<TKey,TValue>, System.Collections.Generic.IEnumerable<System.Collections.Generic.KeyValuePair<TKey,TValue>>, System.Collections.Generic.IReadOnlyCollection<System.Collections.Generic.KeyValuePair<TKey,TValue>>, System.Collections.Generic.IReadOnlyDictionary<TKey,TValue>, System.Collections.IDictionary, System.Collections.Immutable.IImmutableDictionary<TKey,TValue>
type ImmutableDictionary<'Key, 'Value> = class
    interface ICollection<KeyValuePair<'Key, 'Value>>
    interface seq<KeyValuePair<'Key, 'Value>>
    interface IEnumerable
    interface IDictionary<'Key, 'Value>
    interface IReadOnlyCollection<KeyValuePair<'Key, 'Value>>
    interface IReadOnlyDictionary<'Key, 'Value>
    interface ICollection
    interface IDictionary
    interface IImmutableDictionary<'Key, 'Value>
Public NotInheritable Class ImmutableDictionary(Of TKey, TValue)
Implements ICollection(Of KeyValuePair(Of TKey, TValue)), IDictionary, IDictionary(Of TKey, TValue), IEnumerable(Of KeyValuePair(Of TKey, TValue)), IImmutableDictionary(Of TKey, TValue), IReadOnlyCollection(Of KeyValuePair(Of TKey, TValue)), IReadOnlyDictionary(Of TKey, TValue)

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

TKey

Тип ключей в словаре.The type of the keys in the dictionary.

TValue

Тип значений в словаре.The type of the values in the dictionary.

Наследование
ImmutableDictionary<TKey,TValue>
Реализации

Комментарии

При управлении неизменяемым словарем копируется копия исходного словаря, применяются манипуляции и возвращается новый неизменяемый словарь.When you manipulate an immutable dictionary a copy of the original dictionary is made, manipulations applied and a new immutable dictionary is returned.

Поля

Empty

Возвращает пустой неизменяемый словарь.Gets an empty immutable dictionary.

Свойства

Count

Возвращает количество пар "ключ-значение" в неизменяемом словаре.Gets the number of key/value pairs in the immutable dictionary.

IsEmpty

Возвращает значение, указывающее, является ли пустым этот экземпляр неизменяемого словаря.Gets a value that indicates whether this instance of the immutable dictionary is empty.

Item[TKey]

Возвращает значение TValue, связанное с указанным ключом.Gets the TValue associated with the specified key.

KeyComparer

Возвращает функцию сравнения ключей для неизменяемого словаря.Gets the key comparer for the immutable dictionary.

Keys

Возвращает ключи в неизменяемом словаре.Gets the keys in the immutable dictionary.

ValueComparer

Возвращает функцию сравнения значений, которая используется для определения их равенства.Gets the value comparer used to determine whether values are equal.

Values

Возвращает значения в неизменяемом словаре.Gets the values in the immutable dictionary.

Методы

Add(TKey, TValue)

Добавляет в неизменяемый словарь элемент с указанными ключом и значением.Adds an element with the specified key and value to the immutable dictionary.

AddRange(IEnumerable<KeyValuePair<TKey,TValue>>)

Добавляет в неизменяемый словарь указанные пары "ключ-значение".Adds the specified key/value pairs to the immutable dictionary.

Clear()

Возвращает пустой неизменяемый словарь с теми же правилами упорядочения элементов и сравнения ключей и значений, что и в исходном экземпляре словаря.Retrieves an empty immutable dictionary that has the same ordering and key/value comparison rules as this dictionary instance.

Contains(KeyValuePair<TKey,TValue>)

Определяет, содержит ли неизменяемый словарь указанные пары "ключ-значение".Determines whether this immutable dictionary contains the specified key/value pair.

ContainsKey(TKey)

Определяет, содержится ли в неизменяемом словаре элемент с указанным ключом.Determines whether the immutable dictionary contains an element with the specified key.

ContainsValue(TValue)

Определяет, содержится ли в неизменяемом словаре элемент с указанным значением.Determines whether the immutable dictionary contains an element with the specified value.

Equals(Object)

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

(Унаследовано от Object)
GetEnumerator()

Возвращает перечислитель, который выполняет перечисление элементов неизменяемого словаря.Returns an enumerator that iterates through the immutable dictionary.

GetHashCode()

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

(Унаследовано от Object)
GetType()

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

(Унаследовано от Object)
MemberwiseClone()

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

(Унаследовано от Object)
Remove(TKey)

Удаляет из неизменяемого словаря элемент с указанным ключом.Removes the element with the specified key from the immutable dictionary.

RemoveRange(IEnumerable<TKey>)

Удаляет из неизменяемого словаря элементы с указанными ключами.Removes the elements with the specified keys from the immutable dictionary.

SetItem(TKey, TValue)

Устанавливает в неизменяемом словаре пару "ключ-значение" с возможной перезаписью существующего значения для данного ключа.Sets the specified key and value in the immutable dictionary, possibly overwriting an existing value for the key.

SetItems(IEnumerable<KeyValuePair<TKey,TValue>>)

Устанавливает в неизменяемом словаре указанные пары "ключ-значение" с возможной перезаписью существующих значений для данных ключей.Sets the specified key/value pairs in the immutable dictionary, possibly overwriting existing values for the keys.

ToBuilder()

Создает неизменяемый словарь, который содержит те же объекты, что и исходный словарь, а также может эффективно изменяться различными операциями с использованием стандартных изменяемых интерфейсов.Creates an immutable dictionary with the same contents as this dictionary that can be efficiently mutated across multiple operations by using standard mutable interfaces.

ToString()

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

(Унаследовано от Object)
TryGetKey(TKey, TKey)

Определяет, содержится ли в словаре указанный ключ.Determines whether this dictionary contains a specified key.

TryGetValue(TKey, TValue)

Получает значение, связанное с заданным ключом.Gets the value associated with the specified key.

WithComparers(IEqualityComparer<TKey>)

Возвращает экземпляр неизменяемого словаря, который использует указанную функцию сравнения ключей.Gets an instance of the immutable dictionary that uses the specified key comparer.

WithComparers(IEqualityComparer<TKey>, IEqualityComparer<TValue>)

Возвращает экземпляр неизменяемого словаря, который использует указанные функции сравнения ключей и значений.Gets an instance of the immutable dictionary that uses the specified key and value comparers.

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

ICollection.CopyTo(Array, Int32)

Копирует элементы из словаря в массив начиная с определенного индекса в массиве.Copies the elements of the dictionary to an array, starting at a particular array index.

ICollection.IsSynchronized

Возвращает значение, показывающее, является ли доступ к коллекции ICollection синхронизированным (потокобезопасным).Gets a value indicating whether access to the ICollection is synchronized (thread safe).

ICollection.SyncRoot

Получает объект, с помощью которого можно синхронизировать доступ к коллекции ICollection.Gets an object that can be used to synchronize access to the ICollection.

ICollection<KeyValuePair<TKey,TValue>>.Add(KeyValuePair<TKey,TValue>)
ICollection<KeyValuePair<TKey,TValue>>.Clear()
ICollection<KeyValuePair<TKey,TValue>>.CopyTo(KeyValuePair<TKey,TValue>[], Int32)
ICollection<KeyValuePair<TKey,TValue>>.IsReadOnly
ICollection<KeyValuePair<TKey,TValue>>.Remove(KeyValuePair<TKey,TValue>)
IDictionary.Add(Object, Object)

Добавляет в объект неизменяемого словаря элемент с указанными ключом и значением.Adds an element with the provided key and value to the immutable dictionary object.

IDictionary.Clear()

Очищает данный экземпляр.Clears this instance.

IDictionary.Contains(Object)

Определяет, содержится ли в объекте неизменяемого словаря элемент с указанным ключом.Determines whether the immutable dictionary object contains an element with the specified key.

IDictionary.GetEnumerator()

Возвращает объект IDictionaryEnumerator для объекта неизменяемого словаря.Returns an IDictionaryEnumerator object for the immutable dictionary object.

IDictionary.IsFixedSize

Получает значение, показывающее, имеет ли объект IDictionary фиксированный размер.Gets a value indicating whether the IDictionary object has a fixed size.

IDictionary.IsReadOnly

Получает значение, указывающее, является ли объект ICollection<T> доступным только для чтения.Gets a value indicating whether the ICollection<T> is read-only.

IDictionary.Item[Object]

Возвращает или задает элемент с указанным ключом.Gets or sets the element with the specified key.

IDictionary.Keys

Возвращает интерфейс ICollection<T>, содержащий ключи IDictionary<TKey,TValue>.Gets an ICollection<T> containing the keys of the IDictionary<TKey,TValue>.

IDictionary.Remove(Object)

Удаляет из объекта неизменяемого словаря элемент с указанным ключом.Removes the element with the specified key from the immutable dictionary object.

IDictionary.Values

Возвращает интерфейс ICollection<T>, содержащий значения из IDictionary<TKey,TValue>.Gets an ICollection<T> containing the values in the IDictionary<TKey,TValue>.

IDictionary<TKey,TValue>.Add(TKey, TValue)
IDictionary<TKey,TValue>.Item[TKey]
IDictionary<TKey,TValue>.Keys
IDictionary<TKey,TValue>.Remove(TKey)
IDictionary<TKey,TValue>.Values
IEnumerable.GetEnumerator()

Возвращает перечислитель, который осуществляет итерацию по коллекции.Returns an enumerator that iterates through a collection.

IEnumerable<KeyValuePair<TKey,TValue>>.GetEnumerator()
IImmutableDictionary<TKey,TValue>.Add(TKey, TValue)
IImmutableDictionary<TKey,TValue>.AddRange(IEnumerable<KeyValuePair<TKey,TValue>>)
IImmutableDictionary<TKey,TValue>.Clear()
IImmutableDictionary<TKey,TValue>.Remove(TKey)
IImmutableDictionary<TKey,TValue>.RemoveRange(IEnumerable<TKey>)
IImmutableDictionary<TKey,TValue>.SetItem(TKey, TValue)
IImmutableDictionary<TKey,TValue>.SetItems(IEnumerable<KeyValuePair<TKey,TValue>>)

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

GetValueOrDefault<TKey,TValue>(IReadOnlyDictionary<TKey,TValue>, TKey)

Пытается получить значение, связанное с указанным key в dictionary.Tries to get the value associated with the specified key in the dictionary.

GetValueOrDefault<TKey,TValue>(IReadOnlyDictionary<TKey,TValue>, TKey, TValue)

Пытается получить значение, связанное с указанным ключом в dictionary.Tries to get the value associated with the specified key in the dictionary.

Remove<TKey,TValue>(IDictionary<TKey,TValue>, TKey, TValue)

Пытается удалить значение с указанным key из dictionary.Tries to remove the value with the specified key from the dictionary.

TryAdd<TKey,TValue>(IDictionary<TKey,TValue>, TKey, TValue)

Пытается добавить указанные элементы key и value в dictionary.Tries to add the specified key and value to the dictionary.

Contains<TKey,TValue>(IImmutableDictionary<TKey,TValue>, TKey, TValue)

Определяет, содержит ли неизменяемый словарь указанную пару "ключ-значение".Determines whether the specified immutable dictionary contains the specified key/value pair.

GetValueOrDefault<TKey,TValue>(IImmutableDictionary<TKey,TValue>, TKey)

Возвращает значение для указанного ключа, если такой ключ есть в словаре.Gets the value for a given key if a matching key exists in the dictionary.

GetValueOrDefault<TKey,TValue>(IImmutableDictionary<TKey,TValue>, TKey, TValue)

Возвращает значение для указанного ключа, если такой ключ есть в словаре.Gets the value for a given key if a matching key exists in the dictionary.

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)

Копирует объекты 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)

Копирует объекты 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)

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

OfType<TResult>(IEnumerable)

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

AsParallel(IEnumerable)

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

AsQueryable(IEnumerable)

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

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)

Возвращает отфильтрованную коллекцию элементов, содержащую предков каждого узла в исходной коллекции.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>)

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

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)

Возвращает отфильтрованную коллекцию элементов, содержащую подчиненные элементы каждого элемента и документа в исходной коллекции.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>)

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

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

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

Nodes<T>(IEnumerable<T>)

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

Remove<T>(IEnumerable<T>)

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

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

Потокобезопасность

Данный тип потокобезопасен.This type is thread safe.