ArraySegment<T> Структура
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Разделит раздел одномерного массива.
generic <typename T>
public value class ArraySegment : System::Collections::Generic::ICollection<T>, System::Collections::Generic::IEnumerable<T>, System::Collections::Generic::IList<T>, System::Collections::Generic::IReadOnlyCollection<T>, System::Collections::Generic::IReadOnlyList<T>
generic <typename T>
public value class ArraySegment
public struct ArraySegment<T> : System.Collections.Generic.ICollection<T>, System.Collections.Generic.IEnumerable<T>, System.Collections.Generic.IList<T>, System.Collections.Generic.IReadOnlyCollection<T>, System.Collections.Generic.IReadOnlyList<T>
public readonly struct ArraySegment<T> : System.Collections.Generic.ICollection<T>, System.Collections.Generic.IEnumerable<T>, System.Collections.Generic.IList<T>, System.Collections.Generic.IReadOnlyCollection<T>, System.Collections.Generic.IReadOnlyList<T>
[System.Serializable]
public struct ArraySegment<T>
[System.Serializable]
public struct ArraySegment<T> : System.Collections.Generic.ICollection<T>, System.Collections.Generic.IEnumerable<T>, System.Collections.Generic.IList<T>, System.Collections.Generic.IReadOnlyCollection<T>, System.Collections.Generic.IReadOnlyList<T>
type ArraySegment<'T> = struct
interface ICollection<'T>
interface seq<'T>
interface IEnumerable
interface IList<'T>
interface IReadOnlyCollection<'T>
interface IReadOnlyList<'T>
[<System.Serializable>]
type ArraySegment<'T> = struct
[<System.Serializable>]
type ArraySegment<'T> = struct
interface IList<'T>
interface ICollection<'T>
interface IReadOnlyList<'T>
interface IReadOnlyCollection<'T>
interface seq<'T>
interface IEnumerable
[<System.Serializable>]
type ArraySegment<'T> = struct
interface IList<'T>
interface ICollection<'T>
interface seq<'T>
interface IEnumerable
interface IReadOnlyList<'T>
interface IReadOnlyCollection<'T>
type ArraySegment<'T> = struct
interface IList<'T>
interface ICollection<'T>
interface IReadOnlyList<'T>
interface IReadOnlyCollection<'T>
interface seq<'T>
interface IEnumerable
Public Structure ArraySegment(Of T)
Implements ICollection(Of T), IEnumerable(Of T), IList(Of T), IReadOnlyCollection(Of T), IReadOnlyList(Of T)
Public Structure ArraySegment(Of T)
Параметры типа
- T
Тип элементов в сегменте массива.
- Наследование
- Атрибуты
- Реализации
Примеры
В следующем примере кода в метод передается ArraySegment<T> структура.
using namespace System;
namespace Sample
{
public ref class SampleArray
{
public:
static void Work()
{
// Create and initialize a new string array.
array <String^>^ words = {"The", "quick", "brown",
"fox", "jumps", "over", "the", "lazy", "dog"};
// Display the initial contents of the array.
Console::WriteLine("The first array segment"
" (with all the array's elements) contains:");
PrintIndexAndValues(words);
// Define an array segment that contains the entire array.
ArraySegment<String^> segment(words);
// Display the contents of the ArraySegment.
Console::WriteLine("The first array segment"
" (with all the array's elements) contains:");
PrintIndexAndValues(segment);
// Define an array segment that contains the middle five
// values of the array.
ArraySegment<String^> middle(words, 2, 5);
// Display the contents of the ArraySegment.
Console::WriteLine("The second array segment"
" (with the middle five elements) contains:");
PrintIndexAndValues(middle);
// Modify the fourth element of the first array
// segment
segment.Array[3] = "LION";
// Display the contents of the second array segment
// middle. Note that the value of its second element
// also changed.
Console::WriteLine("After the first array segment"
" is modified,the second array segment"
" now contains:");
PrintIndexAndValues(middle);
Console::ReadLine();
}
static void PrintIndexAndValues(ArraySegment<String^>^ segment)
{
for (int i = segment->Offset;
i < (segment->Offset + segment->Count); i++)
{
Console::WriteLine(" [{0}] : {1}", i,
segment->Array[i]);
}
Console::WriteLine();
}
static void PrintIndexAndValues(array<String^>^ words)
{
for (int i = 0; i < words->Length; i++)
{
Console::WriteLine(" [{0}] : {1}", i,
words[i]);
}
Console::WriteLine();
}
};
}
int main()
{
Sample::SampleArray::Work();
return 0;
}
/*
This code produces the following output.
The original array initially contains:
[0] : The
[1] : quick
[2] : brown
[3] : fox
[4] : jumps
[5] : over
[6] : the
[7] : lazy
[8] : dog
The first array segment (with all the array's elements) contains:
[0] : The
[1] : quick
[2] : brown
[3] : fox
[4] : jumps
[5] : over
[6] : the
[7] : lazy
[8] : dog
The second array segment (with the middle five elements) contains:
[2] : brown
[3] : fox
[4] : jumps
[5] : over
[6] : the
After the first array segment is modified, the second array segment now contains:
[2] : brown
[3] : LION
[4] : jumps
[5] : over
[6] : the
*/
using System;
public class SamplesArray {
public static void Main() {
// Create and initialize a new string array.
String[] myArr = { "The", "quick", "brown", "fox", "jumps", "over", "the", "lazy", "dog" };
// Display the initial contents of the array.
Console.WriteLine( "The original array initially contains:" );
PrintIndexAndValues( myArr );
// Define an array segment that contains the entire array.
ArraySegment<string> myArrSegAll = new ArraySegment<string>( myArr );
// Display the contents of the ArraySegment.
Console.WriteLine( "The first array segment (with all the array's elements) contains:" );
PrintIndexAndValues( myArrSegAll );
// Define an array segment that contains the middle five values of the array.
ArraySegment<string> myArrSegMid = new ArraySegment<string>( myArr, 2, 5 );
// Display the contents of the ArraySegment.
Console.WriteLine( "The second array segment (with the middle five elements) contains:" );
PrintIndexAndValues( myArrSegMid );
// Modify the fourth element of the first array segment myArrSegAll.
myArrSegAll.Array[3] = "LION";
// Display the contents of the second array segment myArrSegMid.
// Note that the value of its second element also changed.
Console.WriteLine( "After the first array segment is modified, the second array segment now contains:" );
PrintIndexAndValues( myArrSegMid );
}
public static void PrintIndexAndValues( ArraySegment<string> arrSeg ) {
for ( int i = arrSeg.Offset; i < (arrSeg.Offset + arrSeg.Count); i++ ) {
Console.WriteLine( " [{0}] : {1}", i, arrSeg.Array[i] );
}
Console.WriteLine();
}
public static void PrintIndexAndValues( String[] myArr ) {
for ( int i = 0; i < myArr.Length; i++ ) {
Console.WriteLine( " [{0}] : {1}", i, myArr[i] );
}
Console.WriteLine();
}
}
/*
This code produces the following output.
The original array initially contains:
[0] : The
[1] : quick
[2] : brown
[3] : fox
[4] : jumps
[5] : over
[6] : the
[7] : lazy
[8] : dog
The first array segment (with all the array's elements) contains:
[0] : The
[1] : quick
[2] : brown
[3] : fox
[4] : jumps
[5] : over
[6] : the
[7] : lazy
[8] : dog
The second array segment (with the middle five elements) contains:
[2] : brown
[3] : fox
[4] : jumps
[5] : over
[6] : the
After the first array segment is modified, the second array segment now contains:
[2] : brown
[3] : LION
[4] : jumps
[5] : over
[6] : the
*/
open System
// Print functions.
let printIndexAndValues (myArr: string []) =
for i = 0 to myArr.Length - 1 do
printfn $" [{i}] : {myArr[i]}"
printfn ""
let printIndexAndValuesSeg (arrSeg: ArraySegment<string>) =
for i = arrSeg.Offset to arrSeg.Offset + arrSeg.Count - 1 do
printfn $" [{i}] : {arrSeg.Array[i]}"
printfn ""
// Create and initialize a new string array.
let myArr = [| "The"; "quick"; "brown"; "fox"; "jumps"; "over"; "the"; "lazy"; "dog" |]
// Display the initial contents of the array.
printfn "The original array initially contains:"
printIndexAndValues myArr
// Define an array segment that contains the entire array.
let myArrSegAll = ArraySegment<string>(myArr)
// Display the contents of the ArraySegment.
printfn "The first array segment (with all the array's elements) contains:"
printIndexAndValuesSeg myArrSegAll
// Define an array segment that contains the middle five values of the array.
let myArrSegMid = ArraySegment<string>(myArr, 2, 5)
// Display the contents of the ArraySegment.
printfn "The second array segment (with the middle five elements) contains:"
printIndexAndValuesSeg myArrSegMid
// Modify the fourth element of the first array segment myArrSegAll.
myArrSegAll.Array[3] <- "LION"
// Display the contents of the second array segment myArrSegMid.
// Note that the value of its second element also changed.
printfn "After the first array segment is modified, the second array segment now contains:"
printIndexAndValuesSeg myArrSegMid
(*
This code produces the following output.
The original array initially contains:
[0] : The
[1] : quick
[2] : brown
[3] : fox
[4] : jumps
[5] : over
[6] : the
[7] : lazy
[8] : dog
The first array segment (with all the array's elements) contains:
[0] : The
[1] : quick
[2] : brown
[3] : fox
[4] : jumps
[5] : over
[6] : the
[7] : lazy
[8] : dog
The second array segment (with the middle five elements) contains:
[2] : brown
[3] : fox
[4] : jumps
[5] : over
[6] : the
After the first array segment is modified, the second array segment now contains:
[2] : brown
[3] : LION
[4] : jumps
[5] : over
[6] : the
*)
Public Class SamplesArray
Public Shared Sub Main()
' Create and initialize a new string array.
Dim myArr As String() = {"The", "quick", "brown", "fox", "jumps", "over", "the", "lazy", "dog"}
' Display the initial contents of the array.
Console.WriteLine("The original array initially contains:")
PrintIndexAndValues(myArr)
' Define an array segment that contains the entire array.
Dim myArrSegAll As New ArraySegment(Of String)(myArr)
' Display the contents of the ArraySegment.
Console.WriteLine("The first array segment (with all the array's elements) contains:")
PrintIndexAndValues(myArrSegAll)
' Define an array segment that contains the middle five values of the array.
Dim myArrSegMid As New ArraySegment(Of String)(myArr, 2, 5)
' Display the contents of the ArraySegment.
Console.WriteLine("The second array segment (with the middle five elements) contains:")
PrintIndexAndValues(myArrSegMid)
' Modify the fourth element of the first array segment myArrSegAll.
myArrSegAll.Array(3) = "LION"
' Display the contents of the second array segment myArrSegMid.
' Note that the value of its second element also changed.
Console.WriteLine("After the first array segment is modified, the second array segment now contains:")
PrintIndexAndValues(myArrSegMid)
End Sub
Public Shared Sub PrintIndexAndValues(arrSeg As ArraySegment(Of String))
Dim i As Integer
For i = arrSeg.Offset To (arrSeg.Offset + arrSeg.Count - 1)
Console.WriteLine(" [{0}] : {1}", i, arrSeg.Array(i))
Next i
Console.WriteLine()
End Sub
Public Shared Sub PrintIndexAndValues(myArr as String())
Dim i As Integer
For i = 0 To (myArr.Length - 1)
Console.WriteLine(" [{0}] : {1}", i, myArr(i))
Next i
Console.WriteLine()
End Sub
End Class
'This code produces the following output.
'
'The original array initially contains:
' [0] : The
' [1] : quick
' [2] : brown
' [3] : fox
' [4] : jumps
' [5] : over
' [6] : the
' [7] : lazy
' [8] : dog
'
'The first array segment (with all the array's elements) contains:
' [0] : The
' [1] : quick
' [2] : brown
' [3] : fox
' [4] : jumps
' [5] : over
' [6] : the
' [7] : lazy
' [8] : dog
'
'The second array segment (with the middle five elements) contains:
' [2] : brown
' [3] : fox
' [4] : jumps
' [5] : over
' [6] : the
'
'After the first array segment is modified, the second array segment now contains:
' [2] : brown
' [3] : LION
' [4] : jumps
' [5] : over
' [6] : the
Комментарии
ArraySegment<T> — это оболочка вокруг массива, разделяющего диапазон элементов в этом массиве. Несколько ArraySegment<T> экземпляров могут ссылаться на один и тот же исходный массив и может перекрываться. Исходный массив должен быть одномерным и должен иметь отсчитывание от нуля.
Заметка
ArraySegment<T> реализует интерфейс IReadOnlyCollection<T> начиная с .NET Framework 4.6; В предыдущих версиях .NET Framework структура ArraySegment<T> не реализовала этот интерфейс.
Структура ArraySegment<T> полезна всякий раз, когда элементы массива будут управляться в разных сегментах. Например:
Можно передать объект ArraySegment<T>, представляющий только часть массива в качестве аргумента методу, а не вызывать относительно дорогостоящий метод, например Copy передать копию части массива.
В многопоточное приложение можно использовать структуру ArraySegment<T>, чтобы каждый поток работал только над частью массива.
Для асинхронных операций на основе задач можно использовать объект ArraySegment<T>, чтобы убедиться, что каждая задача работает в отдельном сегменте массива. В следующем примере массив делится на отдельные сегменты до десяти элементов. Каждый элемент в сегменте умножается на его номер сегмента. В результате показано, что использование класса ArraySegment<T> для управления элементами таким образом изменяет значения базового массива.
using System; using System.Collections.Generic; using System.Threading.Tasks; public class Example { private const int segmentSize = 10; public static async Task Main() { List<Task> tasks = new List<Task>(); // Create array. int[] arr = new int[50]; for (int ctr = 0; ctr <= arr.GetUpperBound(0); ctr++) arr[ctr] = ctr + 1; // Handle array in segments of 10. for (int ctr = 1; ctr <= Math.Ceiling(((double)arr.Length)/segmentSize); ctr++) { int multiplier = ctr; int elements = (multiplier - 1) * 10 + segmentSize > arr.Length ? arr.Length - (multiplier - 1) * 10 : segmentSize; ArraySegment<int> segment = new ArraySegment<int>(arr, (ctr - 1) * 10, elements); tasks.Add(Task.Run( () => { IList<int> list = (IList<int>) segment; for (int index = 0; index < list.Count; index++) list[index] = list[index] * multiplier; } )); } try { await Task.WhenAll(tasks.ToArray()); int elementsShown = 0; foreach (var value in arr) { Console.Write("{0,3} ", value); elementsShown++; if (elementsShown % 18 == 0) Console.WriteLine(); } } catch (AggregateException e) { Console.WriteLine("Errors occurred when working with the array:"); foreach (var inner in e.InnerExceptions) Console.WriteLine("{0}: {1}", inner.GetType().Name, inner.Message); } } } // The example displays the following output: // 1 2 3 4 5 6 7 8 9 10 22 24 26 28 30 32 34 36 // 38 40 63 66 69 72 75 78 81 84 87 90 124 128 132 136 140 144 // 148 152 156 160 205 210 215 220 225 230 235 240 245 250
open System open System.Threading.Tasks // Create array. let arr = Array.init 50 (fun i -> i + 1) // Handle array in segments of 10. let tasks = Array.chunkBySize 10 arr |> Array.mapi (fun m elements -> let mutable segment = ArraySegment<int>(arr, m * 10, elements.Length) task { for i = 0 to segment.Count - 1 do segment[i] <- segment[i] * (m + 1) } :> Task) try Task.WhenAll(tasks).Wait() let mutable i = 0 for value in arr do printf $"{value, 3} " i <- i + 1 if i % 18 = 0 then printfn "" with :? AggregateException as e -> printfn "Errors occurred when working with the array:" for inner in e.InnerExceptions do printfn $"{inner.GetType().Name}: {inner.Message}" // The example displays the following output: // 1 2 3 4 5 6 7 8 9 10 22 24 26 28 30 32 34 36 // 38 40 63 66 69 72 75 78 81 84 87 90 124 128 132 136 140 144 // 148 152 156 160 205 210 215 220 225 230 235 240 245 250
Imports System.Collections.Generic Imports System.Threading.Tasks Module Example Private Const SegmentSize As Integer = 10 Public Sub Main() Dim tasks As New List(Of Task) ' Create array. Dim arr(49) As Integer For ctr As Integer = 0 To arr.GetUpperBound(0) arr(ctr) = ctr + 1 Next ' Handle array in segments of 10. For ctr As Integer = 1 To CInt(Math.Ceiling(arr.Length / segmentSize)) Dim multiplier As Integer = ctr Dim elements As Integer = If((multiplier - 1) * 10 + segmentSize > arr.Length, arr.Length - (multiplier - 1) * 10, segmentSize) Dim segment As New ArraySegment(Of Integer)(arr, (ctr - 1) * 10, elements) tasks.Add(Task.Run( Sub() Dim list As IList(Of Integer) = CType(segment, IList(Of Integer)) For index As Integer = 0 To list.Count - 1 list(index) = list(index) * multiplier Next End Sub )) Next Try Task.WaitAll(tasks.ToArray()) Dim elementsShown As Integer = 0 For Each value In arr Console.Write("{0,3} ", value) elementsShown += 1 If elementsShown Mod 18 = 0 Then Console.WriteLine() Next Catch e As AggregateException Console.WriteLine("Errors occurred when working with the array:") For Each inner As Exception In e.InnerExceptions Console.WriteLine("{0}: {1}", inner.GetType().Name, inner.Message) Next End Try End Sub End Module ' The example displays the following output: ' 1 2 3 4 5 6 7 8 9 10 22 24 26 28 30 32 34 36 ' 38 40 63 66 69 72 75 78 81 84 87 90 124 128 132 136 140 144 ' 148 152 156 160 205 210 215 220 225 230 235 240 245 250
Обратите внимание, что хотя ArraySegment<T> структуру можно использовать для разделения массива на отдельные сегменты, сегменты не полностью независимы друг от друга. Свойство Array возвращает весь исходный массив, а не копию массива; поэтому изменения, внесенные в массив, возвращаемый свойством Array, вносятся в исходный массив. Если это нежелательно, следует выполнять операции с копией массива, а не объект ArraySegment<T>, представляющий часть массива.
Метод Equals и операторы равенства и неравенства проверяют на равенство ссылок при сравнении двух объектов ArraySegment<T>. Для двух ArraySegment<T> объектов, которые должны считаться равными, они должны соответствовать всем следующим условиям:
Ссылка на тот же массив.
Начните с того же индекса в массиве.
Имеют одинаковое количество элементов.
Если вы хотите получить элемент по индексу в объекте ArraySegment<T>, необходимо привести его к объекту IList<T> и получить его или изменить с помощью свойства IList<T>.Item[]. Обратите внимание, что это не обязательно в F#. В следующем примере извлекается элемент в объекте ArraySegment<T>, разделяющего раздел массива строк.
using System;
using System.Collections.Generic;
public class Example
{
public static void Main()
{
String[] names = { "Adam", "Bruce", "Charles", "Daniel",
"Ebenezer", "Francis", "Gilbert",
"Henry", "Irving", "John", "Karl",
"Lucian", "Michael" };
var partNames = new ArraySegment<string>(names, 2, 5);
// Cast the ArraySegment object to an IList<string> and enumerate it.
var list = (IList<string>) partNames;
for (int ctr = 0; ctr <= list.Count - 1; ctr++)
Console.WriteLine(list[ctr]);
}
}
// The example displays the following output:
// Charles
// Daniel
// Ebenezer
// Francis
// Gilbert
open System
let names =
[| "Adam"; "Bruce"; "Charles"; "Daniel"
"Ebenezer"; "Francis"; "Gilbert"
"Henry"; "Irving"; "John"; "Karl"
"Lucian"; "Michael" |]
let partNames = ArraySegment<string>(names, 2, 5)
// Enumerate over the ArraySegment object.
for part in partNames do
printfn $"{part}"
// The example displays the following output:
// Charles
// Daniel
// Ebenezer
// Francis
// Gilbert
Imports System.Collections.Generic
Module Example
Public Sub Main()
Dim names() As String = { "Adam", "Bruce", "Charles", "Daniel",
"Ebenezer", "Francis", "Gilbert",
"Henry", "Irving", "John", "Karl",
"Lucian", "Michael" }
Dim partNames As New ArraySegment(Of String)(names, 2, 5)
' Cast the ArraySegment object to an IList<String> and enumerate it.
Dim list = CType(partNames, IList(Of String))
For ctr As Integer = 0 To list.Count - 1
Console.WriteLine(list(ctr))
Next
End Sub
End Module
' The example displays the following output:
' Charles
' Daniel
' Ebenezer
' Francis
' Gilbert
Конструкторы
ArraySegment<T>(T[]) |
Инициализирует новый экземпляр структуры ArraySegment<T>, разделяющей все элементы в указанном массиве. |
ArraySegment<T>(T[], Int32, Int32) |
Инициализирует новый экземпляр структуры ArraySegment<T>, разделяющей указанный диапазон элементов в указанном массиве. |
Свойства
Array |
Возвращает исходный массив, содержащий диапазон элементов, разделенных разделителями сегмента массива. |
Count |
Возвращает количество элементов в диапазоне, разделенном сегментом массива. |
Empty |
Представляет пустой сегмент массива. Это поле доступно только для чтения. |
Item[Int32] |
Возвращает или задает элемент по указанному индексу. |
Offset |
Возвращает позицию первого элемента в диапазоне, разделенном сегментом массива, относительно начала исходного массива. |
Методы
CopyTo(ArraySegment<T>) |
Копирует содержимое этого экземпляра в указанный сегмент целевого массива одного типа |
CopyTo(T[]) |
Копирует содержимое этого экземпляра в указанный целевой массив одного типа |
CopyTo(T[], Int32) |
Копирует содержимое этого экземпляра в указанный целевой массив |
Equals(ArraySegment<T>) |
Определяет, равна ли указанная ArraySegment<T> структура текущему экземпляру. |
Equals(Object) |
Определяет, равен ли указанный объект текущему экземпляру. |
GetEnumerator() |
Возвращает перечислитель, который можно использовать для итерации через сегмент массива. |
GetHashCode() |
Возвращает хэш-код для текущего экземпляра. |
Slice(Int32) |
Формирует срез из текущего сегмента массива, начиная с указанного индекса. |
Slice(Int32, Int32) |
Формирует срез указанной длины из текущего сегмента массива, начиная с указанного индекса. |
ToArray() |
Копирует содержимое этого сегмента массива в новый массив. |
Операторы
Equality(ArraySegment<T>, ArraySegment<T>) |
Указывает, равны ли две ArraySegment<T> структуры. |
Implicit(T[] to ArraySegment<T>) |
Определяет неявное преобразование массива типа |
Inequality(ArraySegment<T>, ArraySegment<T>) |
Указывает, являются ли две структуры ArraySegment<T> неравными. |
Явные реализации интерфейса
ICollection<T>.Add(T) |
Вызывает исключение NotSupportedException во всех случаях. |
ICollection<T>.Clear() |
Вызывает исключение NotSupportedException во всех случаях. |
ICollection<T>.Contains(T) |
Определяет, содержит ли сегмент массива определенное значение. |
ICollection<T>.CopyTo(T[], Int32) |
Копирует элементы сегмента массива в массив, начиная с указанного индекса массива. |
ICollection<T>.IsReadOnly |
Возвращает значение, указывающее, доступен ли сегмент массива только для чтения. |
ICollection<T>.Remove(T) |
Вызывает исключение NotSupportedException во всех случаях. |
IEnumerable.GetEnumerator() |
Возвращает перечислитель, который выполняет итерацию через сегмент массива. |
IEnumerable<T>.GetEnumerator() |
Возвращает перечислитель, который выполняет итерацию по сегменту массива. |
IList<T>.IndexOf(T) |
Определяет индекс определенного элемента в сегменте массива. |
IList<T>.Insert(Int32, T) |
Вызывает исключение NotSupportedException во всех случаях. |
IList<T>.Item[Int32] |
Возвращает или задает элемент по указанному индексу. |
IList<T>.RemoveAt(Int32) |
Вызывает исключение NotSupportedException во всех случаях. |
IReadOnlyList<T>.Item[Int32] |
Возвращает элемент по указанному индексу сегмента массива. |
Методы расширения
ToFrozenDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
Создает FrozenDictionary<TKey,TValue> из IEnumerable<T> в соответствии с указанной функцией селектора ключей. |
ToFrozenDictionary<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, IEqualityComparer<TKey>) |
Создает FrozenDictionary<TKey,TValue> из IEnumerable<T> в соответствии с указанными функциями селектора ключей и селектора элементов. |
ToFrozenSet<T>(IEnumerable<T>, IEqualityComparer<T>) |
Создает FrozenSet<T> с указанными значениями. |
AsReadOnly<T>(IList<T>) |
Возвращает оболочку только для чтения ReadOnlyCollection<T> для указанного списка. |
ToImmutableArray<TSource>(IEnumerable<TSource>) |
Создает неизменяемый массив из указанной коллекции. |
ToImmutableDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Создает неизменяемый словарь из существующей коллекции элементов, применяя функцию преобразования к исходным ключам. |
ToImmutableDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
Создает неизменяемый словарь на основе некоторого преобразования последовательности. |
ToImmutableDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>) |
Перечисляет и преобразует последовательность и создает неизменяемый словарь его содержимого. |
ToImmutableDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>, IEqualityComparer<TKey>) |
Перечисляет и преобразует последовательность и создает неизменяемый словарь его содержимого с помощью указанного средства сравнения ключей. |
ToImmutableDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>, IEqualityComparer<TKey>, IEqualityComparer<TValue>) |
Перечисляет и преобразует последовательность и создает неизменяемый словарь его содержимого с помощью указанных средств сравнения ключей и значений. |
ToImmutableHashSet<TSource>(IEnumerable<TSource>) |
Перечисляет последовательность и создает неизменяемый хэш-набор его содержимого. |
ToImmutableHashSet<TSource>(IEnumerable<TSource>, IEqualityComparer<TSource>) |
Перечисляет последовательность, создает неизменяемый хэш-набор его содержимого и использует указанный средство сравнения равенства для типа набора. |
ToImmutableList<TSource>(IEnumerable<TSource>) |
Перечисляет последовательность и создает неизменяемый список его содержимого. |
ToImmutableSortedDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>) |
Перечисляет и преобразует последовательность и создает неизменяемый отсортированный словарь его содержимого. |
ToImmutableSortedDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>, IComparer<TKey>) |
Перечисляет и преобразует последовательность и создает неизменяемый отсортированный словарь его содержимого с помощью указанного средства сравнения ключей. |
ToImmutableSortedDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>, IComparer<TKey>, IEqualityComparer<TValue>) |
Перечисляет и преобразует последовательность и создает неизменяемый отсортированный словарь его содержимого с помощью указанных средств сравнения ключей и значений. |
ToImmutableSortedSet<TSource>(IEnumerable<TSource>) |
Перечисляет последовательность и создает неизменяемый отсортированный набор его содержимого. |
ToImmutableSortedSet<TSource>(IEnumerable<TSource>, IComparer<TSource>) |
Перечисляет последовательность, создает неизменяемый отсортированный набор его содержимого и использует указанный сопоставитель. |
CopyToDataTable<T>(IEnumerable<T>) |
Возвращает DataTable, содержащий копии объектов DataRow, учитывая входной объект IEnumerable<T>, в котором |
CopyToDataTable<T>(IEnumerable<T>, DataTable, LoadOption) |
Копирует объекты DataRow в указанный DataTable, учитывая входной IEnumerable<T> объект, в котором |
CopyToDataTable<T>(IEnumerable<T>, DataTable, LoadOption, FillErrorEventHandler) |
Копирует объекты DataRow в указанный DataTable, учитывая входной IEnumerable<T> объект, в котором |
Aggregate<TSource>(IEnumerable<TSource>, Func<TSource,TSource,TSource>) |
Применяет функцию аккумулятора по последовательности. |
Aggregate<TSource,TAccumulate>(IEnumerable<TSource>, TAccumulate, Func<TAccumulate,TSource,TAccumulate>) |
Применяет функцию аккумулятора по последовательности. Указанное начальное значение используется в качестве начального значения аккумулятора. |
Aggregate<TSource,TAccumulate,TResult>(IEnumerable<TSource>, TAccumulate, Func<TAccumulate,TSource,TAccumulate>, Func<TAccumulate,TResult>) |
Применяет функцию аккумулятора по последовательности. Указанное начальное значение используется в качестве начального значения аккумулятора, а указанная функция используется для выбора значения результата. |
AggregateBy<TSource,TKey,TAccumulate>(IEnumerable<TSource>, Func<TSource, TKey>, TAccumulate, Func<TAccumulate,TSource,TAccumulate>, IEqualityComparer<TKey>) |
Разделит раздел одномерного массива. |
AggregateBy<TSource,TKey,TAccumulate>(IEnumerable<TSource>, Func<TSource, TKey>, Func<TKey,TAccumulate>, Func<TAccumulate,TSource,TAccumulate>, IEqualityComparer<TKey>) |
Разделит раздел одномерного массива. |
All<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Определяет, соответствуют ли все элементы последовательности условию. |
Any<TSource>(IEnumerable<TSource>) |
Определяет, содержит ли последовательность любые элементы. |
Any<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Определяет, соответствует ли любой элемент последовательности условию. |
Append<TSource>(IEnumerable<TSource>, TSource) |
Добавляет значение в конец последовательности. |
AsEnumerable<TSource>(IEnumerable<TSource>) |
Возвращает входные данные, типизированные как IEnumerable<T>. |
Average<TSource>(IEnumerable<TSource>, Func<TSource,Decimal>) |
Вычисляет среднее значение последовательности Decimal значений, полученных путем вызова функции преобразования для каждого элемента входной последовательности. |
Average<TSource>(IEnumerable<TSource>, Func<TSource,Double>) |
Вычисляет среднее значение последовательности Double значений, полученных путем вызова функции преобразования для каждого элемента входной последовательности. |
Average<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) |
Вычисляет среднее значение последовательности Int32 значений, полученных путем вызова функции преобразования для каждого элемента входной последовательности. |
Average<TSource>(IEnumerable<TSource>, Func<TSource,Int64>) |
Вычисляет среднее значение последовательности Int64 значений, полученных путем вызова функции преобразования для каждого элемента входной последовательности. |
Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Decimal>>) |
Вычисляет среднее значение последовательности значений, допускающих значение NULL, Decimal, полученных путем вызова функции преобразования для каждого элемента входной последовательности. |
Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>) |
Вычисляет среднее значение последовательности значений, допускающих значение NULL, Double, полученных путем вызова функции преобразования для каждого элемента входной последовательности. |
Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>) |
Вычисляет среднее значение последовательности значений, допускающих значение NULL, Int32, полученных путем вызова функции преобразования для каждого элемента входной последовательности. |
Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>) |
Вычисляет среднее значение последовательности значений, допускающих значение NULL, Int64, полученных путем вызова функции преобразования для каждого элемента входной последовательности. |
Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>) |
Вычисляет среднее значение последовательности значений, допускающих значение NULL, Single, полученных путем вызова функции преобразования для каждого элемента входной последовательности. |
Average<TSource>(IEnumerable<TSource>, Func<TSource,Single>) |
Вычисляет среднее значение последовательности Single значений, полученных путем вызова функции преобразования для каждого элемента входной последовательности. |
Cast<TResult>(IEnumerable) |
Приведение элементов IEnumerable к указанному типу. |
Chunk<TSource>(IEnumerable<TSource>, Int32) |
Разбивает элементы последовательности на блоки размера не более |
Concat<TSource>(IEnumerable<TSource>, IEnumerable<TSource>) |
Объединяет две последовательности. |
Contains<TSource>(IEnumerable<TSource>, TSource) |
Определяет, содержит ли последовательность указанный элемент с помощью средства сравнения равенства по умолчанию. |
Contains<TSource>(IEnumerable<TSource>, TSource, IEqualityComparer<TSource>) |
Определяет, содержит ли последовательность указанный элемент с помощью указанного IEqualityComparer<T>. |
Count<TSource>(IEnumerable<TSource>) |
Возвращает количество элементов в последовательности. |
Count<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Возвращает число, представляющее, сколько элементов в указанной последовательности удовлетворяет условию. |
CountBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
Разделит раздел одномерного массива. |
DefaultIfEmpty<TSource>(IEnumerable<TSource>) |
Возвращает элементы указанной последовательности или значение параметра типа по умолчанию в одной коллекции, если последовательность пуста. |
DefaultIfEmpty<TSource>(IEnumerable<TSource>, TSource) |
Возвращает элементы указанной последовательности или указанное значение в одной коллекции, если последовательность пуста. |
Distinct<TSource>(IEnumerable<TSource>) |
Возвращает отдельные элементы из последовательности с помощью сравнения значений по умолчанию. |
Distinct<TSource>(IEnumerable<TSource>, IEqualityComparer<TSource>) |
Возвращает отдельные элементы из последовательности с помощью указанного IEqualityComparer<T> для сравнения значений. |
DistinctBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Возвращает отдельные элементы из последовательности в соответствии с указанной функцией селектора ключей. |
DistinctBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
Возвращает отдельные элементы из последовательности в соответствии с указанной функцией селектора ключей и с помощью указанного средства сравнения ключей. |
ElementAt<TSource>(IEnumerable<TSource>, Index) |
Возвращает элемент по указанному индексу в последовательности. |
ElementAt<TSource>(IEnumerable<TSource>, Int32) |
Возвращает элемент по указанному индексу в последовательности. |
ElementAtOrDefault<TSource>(IEnumerable<TSource>, Index) |
Возвращает элемент по указанному индексу в последовательности или значении по умолчанию, если индекс выходит из диапазона. |
ElementAtOrDefault<TSource>(IEnumerable<TSource>, Int32) |
Возвращает элемент по указанному индексу в последовательности или значении по умолчанию, если индекс выходит из диапазона. |
Except<TSource>(IEnumerable<TSource>, IEnumerable<TSource>) |
Создает различие набора двух последовательностей с помощью сравнения значений по умолчанию. |
Except<TSource>(IEnumerable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>) |
Создает различие набора двух последовательностей с помощью указанного IEqualityComparer<T> для сравнения значений. |
ExceptBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TKey>, Func<TSource,TKey>) |
Создает разницу набора двух последовательностей в соответствии с указанной функцией селектора ключей. |
ExceptBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TKey>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
Создает разницу набора двух последовательностей в соответствии с указанной функцией селектора ключей. |
First<TSource>(IEnumerable<TSource>) |
Возвращает первый элемент последовательности. |
First<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Возвращает первый элемент в последовательности, удовлетворяющей указанному условию. |
FirstOrDefault<TSource>(IEnumerable<TSource>) |
Возвращает первый элемент последовательности или значение по умолчанию, если последовательность не содержит элементов. |
FirstOrDefault<TSource>(IEnumerable<TSource>, TSource) |
Возвращает первый элемент последовательности или указанное значение по умолчанию, если последовательность не содержит элементов. |
FirstOrDefault<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Возвращает первый элемент последовательности, удовлетворяющий условию или значению по умолчанию, если такой элемент не найден. |
FirstOrDefault<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>, TSource) |
Возвращает первый элемент последовательности, удовлетворяющий условию, или заданное значение по умолчанию, если такой элемент не найден. |
GroupBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Группируйте элементы последовательности в соответствии с указанной функцией селектора ключей. |
GroupBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
Группирует элементы последовательности в соответствии с указанной функцией селектора ключей и сравнивает ключи с помощью указанного средства сравнения. |
GroupBy<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>) |
Группируйте элементы последовательности в соответствии с указанной функцией селектора ключей и проектируйте элементы для каждой группы с помощью указанной функции. |
GroupBy<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, IEqualityComparer<TKey>) |
Группируйте элементы последовательности в соответствии с функцией селектора ключей. Ключи сравниваются с помощью средства сравнения, а элементы каждой группы проецируются с помощью указанной функции. |
GroupBy<TSource,TKey,TResult>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TKey,IEnumerable<TSource>,TResult>) |
Группирует элементы последовательности в соответствии с указанной функцией селектора ключей и создает значение результата из каждой группы и его ключа. |
GroupBy<TSource,TKey,TResult>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TKey,IEnumerable<TSource>,TResult>, IEqualityComparer<TKey>) |
Группирует элементы последовательности в соответствии с указанной функцией селектора ключей и создает значение результата из каждой группы и его ключа. Ключи сравниваются с помощью указанного средства сравнения. |
GroupBy<TSource,TKey,TElement,TResult>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, Func<TKey,IEnumerable<TElement>,TResult>) |
Группирует элементы последовательности в соответствии с указанной функцией селектора ключей и создает значение результата из каждой группы и его ключа. Элементы каждой группы проецируются с помощью указанной функции. |
GroupBy<TSource,TKey,TElement,TResult>(IEnumerable<TSource>, Func<TSource, TKey>, Func<TSource,TElement>, Func<TKey,IEnumerable<TElement>, TResult>, IEqualityComparer<TKey>) |
Группирует элементы последовательности в соответствии с указанной функцией селектора ключей и создает значение результата из каждой группы и его ключа. Ключевые значения сравниваются с помощью указанного средства сравнения, а элементы каждой группы проецируются с помощью указанной функции. |
GroupJoin<TOuter,TInner,TKey,TResult>(IEnumerable<TOuter>, IEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,IEnumerable<TInner>, TResult>) |
Сопоставляет элементы двух последовательностей на основе равенства ключей и группирует результаты. Средство сравнения равенства по умолчанию используется для сравнения ключей. |
GroupJoin<TOuter,TInner,TKey,TResult>(IEnumerable<TOuter>, IEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,IEnumerable<TInner>, TResult>, IEqualityComparer<TKey>) |
Сопоставляет элементы двух последовательностей на основе равенства ключей и группирует результаты. Для сравнения ключей используется указанный IEqualityComparer<T>. |
Index<TSource>(IEnumerable<TSource>) |
Возвращает перечисление, которое включает индекс элемента в кортеж. |
Intersect<TSource>(IEnumerable<TSource>, IEnumerable<TSource>) |
Создает набор пересечения двух последовательностей с помощью сравнения значений по умолчанию. |
Intersect<TSource>(IEnumerable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>) |
Создает набор пересечения двух последовательностей с помощью указанного IEqualityComparer<T> для сравнения значений. |
IntersectBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TKey>, Func<TSource,TKey>) |
Создает пересечение набора двух последовательностей в соответствии с указанной функцией селектора ключей. |
IntersectBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TKey>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
Создает пересечение набора двух последовательностей в соответствии с указанной функцией селектора ключей. |
Join<TOuter,TInner,TKey,TResult>(IEnumerable<TOuter>, IEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,TInner,TResult>) |
Сопоставляет элементы двух последовательностей на основе соответствующих ключей. Средство сравнения равенства по умолчанию используется для сравнения ключей. |
Join<TOuter,TInner,TKey,TResult>(IEnumerable<TOuter>, IEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,TInner,TResult>, IEqualityComparer<TKey>) |
Сопоставляет элементы двух последовательностей на основе соответствующих ключей. Для сравнения ключей используется указанный IEqualityComparer<T>. |
Last<TSource>(IEnumerable<TSource>) |
Возвращает последний элемент последовательности. |
Last<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Возвращает последний элемент последовательности, удовлетворяющей указанному условию. |
LastOrDefault<TSource>(IEnumerable<TSource>) |
Возвращает последний элемент последовательности или значение по умолчанию, если последовательность не содержит элементов. |
LastOrDefault<TSource>(IEnumerable<TSource>, TSource) |
Возвращает последний элемент последовательности или указанное значение по умолчанию, если последовательность не содержит элементов. |
LastOrDefault<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Возвращает последний элемент последовательности, удовлетворяющей условию или значению по умолчанию, если такой элемент не найден. |
LastOrDefault<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>, TSource) |
Возвращает последний элемент последовательности, удовлетворяющей условию, или заданное значение по умолчанию, если такой элемент не найден. |
LongCount<TSource>(IEnumerable<TSource>) |
Возвращает Int64, представляющую общее количество элементов в последовательности. |
LongCount<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Возвращает Int64, представляющий количество элементов в последовательности, удовлетворяющих условию. |
Max<TSource>(IEnumerable<TSource>) |
Возвращает максимальное значение в универсальной последовательности. |
Max<TSource>(IEnumerable<TSource>, IComparer<TSource>) |
Возвращает максимальное значение в универсальной последовательности. |
Max<TSource>(IEnumerable<TSource>, Func<TSource,Decimal>) |
Вызывает функцию преобразования для каждого элемента последовательности и возвращает максимальное значение Decimal. |
Max<TSource>(IEnumerable<TSource>, Func<TSource,Double>) |
Вызывает функцию преобразования для каждого элемента последовательности и возвращает максимальное значение Double. |
Max<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) |
Вызывает функцию преобразования для каждого элемента последовательности и возвращает максимальное значение Int32. |
Max<TSource>(IEnumerable<TSource>, Func<TSource,Int64>) |
Вызывает функцию преобразования для каждого элемента последовательности и возвращает максимальное значение Int64. |
Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Decimal>>) |
Вызывает функцию преобразования для каждого элемента последовательности и возвращает максимально допустимое значение null Decimal. |
Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>) |
Вызывает функцию преобразования для каждого элемента последовательности и возвращает максимально допустимое значение null Double. |
Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>) |
Вызывает функцию преобразования для каждого элемента последовательности и возвращает максимально допустимое значение null Int32. |
Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>) |
Вызывает функцию преобразования для каждого элемента последовательности и возвращает максимально допустимое значение null Int64. |
Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>) |
Вызывает функцию преобразования для каждого элемента последовательности и возвращает максимально допустимое значение null Single. |
Max<TSource>(IEnumerable<TSource>, Func<TSource,Single>) |
Вызывает функцию преобразования для каждого элемента последовательности и возвращает максимальное значение Single. |
Max<TSource,TResult>(IEnumerable<TSource>, Func<TSource,TResult>) |
Вызывает функцию преобразования для каждого элемента универсальной последовательности и возвращает максимальное результирующее значение. |
MaxBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Возвращает максимальное значение в универсальной последовательности в соответствии с указанной функцией селектора ключей. |
MaxBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IComparer<TKey>) |
Возвращает максимальное значение в универсальной последовательности в соответствии с указанной функцией селектора ключей и компратором ключей. |
Min<TSource>(IEnumerable<TSource>) |
Возвращает минимальное значение в универсальной последовательности. |
Min<TSource>(IEnumerable<TSource>, IComparer<TSource>) |
Возвращает минимальное значение в универсальной последовательности. |
Min<TSource>(IEnumerable<TSource>, Func<TSource,Decimal>) |
Вызывает функцию преобразования для каждого элемента последовательности и возвращает минимальное значение Decimal. |
Min<TSource>(IEnumerable<TSource>, Func<TSource,Double>) |
Вызывает функцию преобразования для каждого элемента последовательности и возвращает минимальное значение Double. |
Min<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) |
Вызывает функцию преобразования для каждого элемента последовательности и возвращает минимальное значение Int32. |
Min<TSource>(IEnumerable<TSource>, Func<TSource,Int64>) |
Вызывает функцию преобразования для каждого элемента последовательности и возвращает минимальное значение Int64. |
Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Decimal>>) |
Вызывает функцию преобразования для каждого элемента последовательности и возвращает минимальное значение, допускающее значение null Decimal. |
Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>) |
Вызывает функцию преобразования для каждого элемента последовательности и возвращает минимальное значение, допускающее значение null Double. |
Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>) |
Вызывает функцию преобразования для каждого элемента последовательности и возвращает минимальное значение, допускающее значение null Int32. |
Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>) |
Вызывает функцию преобразования для каждого элемента последовательности и возвращает минимальное значение, допускающее значение null Int64. |
Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>) |
Вызывает функцию преобразования для каждого элемента последовательности и возвращает минимальное значение, допускающее значение null Single. |
Min<TSource>(IEnumerable<TSource>, Func<TSource,Single>) |
Вызывает функцию преобразования для каждого элемента последовательности и возвращает минимальное значение Single. |
Min<TSource,TResult>(IEnumerable<TSource>, Func<TSource,TResult>) |
Вызывает функцию преобразования для каждого элемента универсальной последовательности и возвращает минимальное результирующее значение. |
MinBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Возвращает минимальное значение в универсальной последовательности в соответствии с указанной функцией селектора ключей. |
MinBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IComparer<TKey>) |
Возвращает минимальное значение в универсальной последовательности в соответствии с указанной функцией селектора ключей и компратером ключей. |
OfType<TResult>(IEnumerable) |
Фильтрует элементы IEnumerable на основе указанного типа. |
Order<T>(IEnumerable<T>) |
Сортирует элементы последовательности в порядке возрастания. |
Order<T>(IEnumerable<T>, IComparer<T>) |
Сортирует элементы последовательности в порядке возрастания. |
OrderBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Сортирует элементы последовательности в порядке возрастания в соответствии с ключом. |
OrderBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IComparer<TKey>) |
Сортирует элементы последовательности в порядке возрастания с помощью указанного сравнения. |
OrderByDescending<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Сортирует элементы последовательности в порядке убывания в соответствии с ключом. |
OrderByDescending<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IComparer<TKey>) |
Сортирует элементы последовательности в порядке убывания с помощью указанного сравнения. |
OrderDescending<T>(IEnumerable<T>) |
Сортирует элементы последовательности в порядке убывания. |
OrderDescending<T>(IEnumerable<T>, IComparer<T>) |
Сортирует элементы последовательности в порядке убывания. |
Prepend<TSource>(IEnumerable<TSource>, TSource) |
Добавляет значение в начало последовательности. |
Reverse<TSource>(IEnumerable<TSource>) |
Инвертирует порядок элементов в последовательности. |
Select<TSource,TResult>(IEnumerable<TSource>, Func<TSource,TResult>) |
Проектируйте каждый элемент последовательности в новую форму. |
Select<TSource,TResult>(IEnumerable<TSource>, Func<TSource,Int32,TResult>) |
Проектируйте каждый элемент последовательности в новую форму, включив индекс элемента. |
SelectMany<TSource,TResult>(IEnumerable<TSource>, Func<TSource,IEnumerable<TResult>>) |
Проектирует каждый элемент последовательности в IEnumerable<T> и преобразует полученные последовательности в одну последовательность. |
SelectMany<TSource,TResult>(IEnumerable<TSource>, Func<TSource,Int32,IEnumerable<TResult>>) |
Проектирует каждый элемент последовательности в IEnumerable<T>, а результирующий последовательности — в одну последовательность. Индекс каждого исходного элемента используется в проецируемых формах этого элемента. |
SelectMany<TSource,TCollection,TResult>(IEnumerable<TSource>, Func<TSource,IEnumerable<TCollection>>, Func<TSource,TCollection,TResult>) |
Проектирует каждый элемент последовательности в IEnumerable<T>, сглаживает полученные последовательности в одну последовательность и вызывает функцию селектора результатов для каждого элемента. |
SelectMany<TSource,TCollection,TResult>(IEnumerable<TSource>, Func<TSource,Int32,IEnumerable<TCollection>>, Func<TSource,TCollection,TResult>) |
Проектирует каждый элемент последовательности в IEnumerable<T>, сглаживает полученные последовательности в одну последовательность и вызывает функцию селектора результатов для каждого элемента. Индекс каждого исходного элемента используется в промежуточной проецированной форме этого элемента. |
SequenceEqual<TSource>(IEnumerable<TSource>, IEnumerable<TSource>) |
Определяет, равны ли две последовательности путем сравнения элементов с помощью средства сравнения равенства по умолчанию для их типа. |
SequenceEqual<TSource>(IEnumerable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>) |
Определяет, равны ли две последовательности, сравнивая их элементы с помощью указанной IEqualityComparer<T>. |
Single<TSource>(IEnumerable<TSource>) |
Возвращает единственный элемент последовательности и создает исключение, если в последовательности нет ни одного элемента. |
Single<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Возвращает единственный элемент последовательности, удовлетворяющей указанному условию, и создает исключение, если существует несколько таких элементов. |
SingleOrDefault<TSource>(IEnumerable<TSource>) |
Возвращает единственный элемент последовательности или значение по умолчанию, если последовательность пуста; этот метод создает исключение, если в последовательности существует несколько элементов. |
SingleOrDefault<TSource>(IEnumerable<TSource>, TSource) |
Возвращает единственный элемент последовательности или указанное значение по умолчанию, если последовательность пуста; этот метод создает исключение, если в последовательности существует несколько элементов. |
SingleOrDefault<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Возвращает единственный элемент последовательности, удовлетворяющий указанному условию или значению по умолчанию, если такой элемент не существует; Этот метод создает исключение, если несколько элементов удовлетворяют условию. |
SingleOrDefault<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>, TSource) |
Возвращает единственный элемент последовательности, удовлетворяющей указанному условию, или заданное значение по умолчанию, если такой элемент отсутствует; Этот метод создает исключение, если несколько элементов удовлетворяют условию. |
Skip<TSource>(IEnumerable<TSource>, Int32) |
Проходит указанное число элементов в последовательности, а затем возвращает оставшиеся элементы. |
SkipLast<TSource>(IEnumerable<TSource>, Int32) |
Возвращает новую перечисленную коллекцию, содержащую элементы из |
SkipWhile<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Обход элементов последовательности до тех пор, пока указанное условие имеет значение true, а затем возвращает оставшиеся элементы. |
SkipWhile<TSource>(IEnumerable<TSource>, Func<TSource,Int32,Boolean>) |
Обход элементов последовательности до тех пор, пока указанное условие имеет значение true, а затем возвращает оставшиеся элементы. Индекс элемента используется в логике функции предиката. |
Sum<TSource>(IEnumerable<TSource>, Func<TSource,Decimal>) |
Вычисляет сумму последовательности значений Decimal, полученных путем вызова функции преобразования для каждого элемента входной последовательности. |
Sum<TSource>(IEnumerable<TSource>, Func<TSource,Double>) |
Вычисляет сумму последовательности значений Double, полученных путем вызова функции преобразования для каждого элемента входной последовательности. |
Sum<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) |
Вычисляет сумму последовательности значений Int32, полученных путем вызова функции преобразования для каждого элемента входной последовательности. |
Sum<TSource>(IEnumerable<TSource>, Func<TSource,Int64>) |
Вычисляет сумму последовательности значений Int64, полученных путем вызова функции преобразования для каждого элемента входной последовательности. |
Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Decimal>>) |
Вычисляет сумму последовательности значений, допускающих значение NULL, Decimal, полученных путем вызова функции преобразования для каждого элемента входной последовательности. |
Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>) |
Вычисляет сумму последовательности значений, допускающих значение NULL, Double, полученных путем вызова функции преобразования для каждого элемента входной последовательности. |
Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>) |
Вычисляет сумму последовательности значений, допускающих значение NULL, Int32, полученных путем вызова функции преобразования для каждого элемента входной последовательности. |
Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>) |
Вычисляет сумму последовательности значений, допускающих значение NULL, Int64, полученных путем вызова функции преобразования для каждого элемента входной последовательности. |
Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>) |
Вычисляет сумму последовательности значений, допускающих значение NULL, Single, полученных путем вызова функции преобразования для каждого элемента входной последовательности. |
Sum<TSource>(IEnumerable<TSource>, Func<TSource,Single>) |
Вычисляет сумму последовательности значений Single, полученных путем вызова функции преобразования для каждого элемента входной последовательности. |
Take<TSource>(IEnumerable<TSource>, Int32) |
Возвращает указанное число смежных элементов из начала последовательности. |
Take<TSource>(IEnumerable<TSource>, Range) |
Возвращает указанный диапазон смежных элементов из последовательности. |
TakeLast<TSource>(IEnumerable<TSource>, Int32) |
Возвращает новую перечисленную коллекцию, содержащую последние элементы |
TakeWhile<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Возвращает элементы из последовательности до тех пор, пока указанное условие имеет значение true. |
TakeWhile<TSource>(IEnumerable<TSource>, Func<TSource,Int32,Boolean>) |
Возвращает элементы из последовательности до тех пор, пока указанное условие имеет значение true. Индекс элемента используется в логике функции предиката. |
ToArray<TSource>(IEnumerable<TSource>) |
Создает массив из IEnumerable<T>. |
ToDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Создает Dictionary<TKey,TValue> из IEnumerable<T> в соответствии с указанной функцией селектора ключей. |
ToDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
Создает Dictionary<TKey,TValue> из IEnumerable<T> в соответствии с указанной функцией селектора ключей и компратором ключей. |
ToDictionary<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>) |
Создает Dictionary<TKey,TValue> из IEnumerable<T> в соответствии с указанными функциями селектора ключей и селектора элементов. |
ToDictionary<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, IEqualityComparer<TKey>) |
Создает Dictionary<TKey,TValue> из IEnumerable<T> в соответствии с указанной функцией селектора ключей, компратором и функцией селектора элементов. |
ToHashSet<TSource>(IEnumerable<TSource>) |
Создает HashSet<T> из IEnumerable<T>. |
ToHashSet<TSource>(IEnumerable<TSource>, IEqualityComparer<TSource>) |
Создает HashSet<T> из IEnumerable<T> с помощью |
ToList<TSource>(IEnumerable<TSource>) |
Создает List<T> из IEnumerable<T>. |
ToLookup<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Создает Lookup<TKey,TElement> из IEnumerable<T> в соответствии с указанной функцией селектора ключей. |
ToLookup<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
Создает Lookup<TKey,TElement> из IEnumerable<T> в соответствии с указанной функцией селектора ключей и компратором ключей. |
ToLookup<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>) |
Создает Lookup<TKey,TElement> из IEnumerable<T> в соответствии с указанными функциями селектора ключей и селектора элементов. |
ToLookup<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, IEqualityComparer<TKey>) |
Создает Lookup<TKey,TElement> из IEnumerable<T> в соответствии с указанной функцией селектора ключей, компратором и функцией селектора элементов. |
TryGetNonEnumeratedCount<TSource>(IEnumerable<TSource>, Int32) |
Пытается определить количество элементов в последовательности без принудительного перечисления. |
Union<TSource>(IEnumerable<TSource>, IEnumerable<TSource>) |
Создает объединение наборов двух последовательностей с помощью средства сравнения равенства по умолчанию. |
Union<TSource>(IEnumerable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>) |
Создает объединение наборов двух последовательностей с помощью указанного IEqualityComparer<T>. |
UnionBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TSource>, Func<TSource,TKey>) |
Создает объединение наборов двух последовательностей в соответствии с указанной функцией селектора ключей. |
UnionBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
Создает объединение наборов двух последовательностей в соответствии с указанной функцией селектора ключей. |
Where<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Фильтрует последовательность значений на основе предиката. |
Where<TSource>(IEnumerable<TSource>, Func<TSource,Int32,Boolean>) |
Фильтрует последовательность значений на основе предиката. Индекс каждого элемента используется в логике функции предиката. |
Zip<TFirst,TSecond>(IEnumerable<TFirst>, IEnumerable<TSecond>) |
Создает последовательность кортежей с элементами из двух указанных последовательностей. |
Zip<TFirst,TSecond,TThird>(IEnumerable<TFirst>, IEnumerable<TSecond>, IEnumerable<TThird>) |
Создает последовательность кортежей с элементами из трех указанных последовательностей. |
Zip<TFirst,TSecond,TResult>(IEnumerable<TFirst>, IEnumerable<TSecond>, Func<TFirst,TSecond,TResult>) |
Применяет указанную функцию к соответствующим элементам двух последовательностей, создавая последовательность результатов. |
AsParallel(IEnumerable) |
Включает параллелизацию запроса. |
AsParallel<TSource>(IEnumerable<TSource>) |
Включает параллелизацию запроса. |
AsQueryable(IEnumerable) |
Преобразует IEnumerable в IQueryable. |
AsQueryable<TElement>(IEnumerable<TElement>) |
Преобразует универсальный IEnumerable<T> в универсальный IQueryable<T>. |
AsMemory<T>(ArraySegment<T>) |
Создает новый регион памяти по части сегмента целевого массива. |
AsMemory<T>(ArraySegment<T>, Int32) |
Создает новый регион памяти по части сегмента целевого массива, начиная с указанной позиции до конца сегмента. |
AsMemory<T>(ArraySegment<T>, Int32, Int32) |
Создает новый регион памяти по части сегмента целевого массива, начиная с указанной позиции с указанной длиной. |
AsSpan<T>(ArraySegment<T>) |
Создает новый диапазон по сегменту целевого массива. |
AsSpan<T>(ArraySegment<T>, Index) |
Создает новый диапазон по части сегмента целевого массива, начиная с указанного индекса и заканчивая в конце сегмента. |
AsSpan<T>(ArraySegment<T>, Int32) |
Создает новый диапазон по части сегмента целевого массива от указанной позиции до конца сегмента. |
AsSpan<T>(ArraySegment<T>, Int32, Int32) |
Создает новый диапазон по части сегмента целевого массива из указанной позиции для указанной длины. |
AsSpan<T>(ArraySegment<T>, Range) |
Создает новый диапазон по части сегмента целевого массива с помощью начальных и конечных индексов диапазона. |
Ancestors<T>(IEnumerable<T>) |
Возвращает коллекцию элементов, содержащих предки каждого узла в исходной коллекции. |
Ancestors<T>(IEnumerable<T>, XName) |
Возвращает отфильтрованную коллекцию элементов, содержащих предки каждого узла в исходной коллекции. В коллекцию включены только элементы с соответствующими XName. |
DescendantNodes<T>(IEnumerable<T>) |
Возвращает коллекцию потомков каждого документа и элемента в исходной коллекции. |
Descendants<T>(IEnumerable<T>) |
Возвращает коллекцию элементов, содержащих потомки каждого элемента и документа в исходной коллекции. |
Descendants<T>(IEnumerable<T>, XName) |
Возвращает отфильтрованную коллекцию элементов, содержащих потомки каждого элемента и документа в исходной коллекции. В коллекцию включены только элементы с соответствующими XName. |
Elements<T>(IEnumerable<T>) |
Возвращает коллекцию дочерних элементов каждого элемента и документа в исходной коллекции. |
Elements<T>(IEnumerable<T>, XName) |
Возвращает отфильтрованную коллекцию дочерних элементов каждого элемента и документа в исходной коллекции. В коллекцию включены только элементы с соответствующими XName. |
InDocumentOrder<T>(IEnumerable<T>) |
Возвращает коллекцию узлов, содержащих все узлы в исходной коллекции, отсортированные в порядке документа. |
Nodes<T>(IEnumerable<T>) |
Возвращает коллекцию дочерних узлов каждого документа и элемента в исходной коллекции. |
Remove<T>(IEnumerable<T>) |
Удаляет каждый узел в исходной коллекции из родительского узла. |