IEnumerable<T> Interface
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Expõe o enumerador, que suporta uma iteração simples sobre uma coleção de um tipo especificado.
generic <typename T>
public interface class IEnumerable : System::Collections::IEnumerable
public interface IEnumerable<out T> : System.Collections.IEnumerable
public interface IEnumerable<T> : System.Collections.IEnumerable
type seq<'T> = interface
interface IEnumerable
Public Interface IEnumerable(Of Out T)
Implements IEnumerable
Public Interface IEnumerable(Of T)
Implements IEnumerable
Parâmetros de Tipo Genérico
- T
O tipo de objetos a enumerar.
Este parâmetro de tipo é covariante. Ou seja, pode utilizar o tipo que especificou ou qualquer tipo que seja mais derivado. Para obter mais informações sobre covariância e contravariância, veja Covariância e Contravariância em Genérico.- Derivado
- Implementações
Exemplos
O exemplo seguinte demonstra como implementar a IEnumerable<T> interface e como usar essa implementação para criar uma consulta LINQ. Quando implementa IEnumerable<T>, também deve implementar IEnumerator<T> ou, apenas para C#, pode usar a palavra-chave yield . A implementação IEnumerator<T> também exige IDisposable ser implementada, como verá neste exemplo.
using System;
using System.IO;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
public class App
{
// Exercise the Iterator and show that it's more
// performant.
public static void Main()
{
TestStreamReaderEnumerable();
Console.WriteLine("---");
TestReadingFile();
}
public static void TestStreamReaderEnumerable()
{
// Check the memory before the iterator is used.
long memoryBefore = GC.GetTotalMemory(true);
IEnumerable<String> stringsFound;
// Open a file with the StreamReaderEnumerable and check for a string.
try {
stringsFound =
from line in new StreamReaderEnumerable(@"c:\temp\tempFile.txt")
where line.Contains("string to search for")
select line;
Console.WriteLine("Found: " + stringsFound.Count());
}
catch (FileNotFoundException) {
Console.WriteLine(@"This example requires a file named C:\temp\tempFile.txt.");
return;
}
// Check the memory after the iterator and output it to the console.
long memoryAfter = GC.GetTotalMemory(false);
Console.WriteLine("Memory Used With Iterator = \t"
+ string.Format(((memoryAfter - memoryBefore) / 1000).ToString(), "n") + "kb");
}
public static void TestReadingFile()
{
long memoryBefore = GC.GetTotalMemory(true);
StreamReader sr;
try {
sr = File.OpenText("c:\\temp\\tempFile.txt");
}
catch (FileNotFoundException) {
Console.WriteLine(@"This example requires a file named C:\temp\tempFile.txt.");
return;
}
// Add the file contents to a generic list of strings.
List<string> fileContents = new List<string>();
while (!sr.EndOfStream) {
fileContents.Add(sr.ReadLine());
}
// Check for the string.
var stringsFound =
from line in fileContents
where line.Contains("string to search for")
select line;
sr.Close();
Console.WriteLine("Found: " + stringsFound.Count());
// Check the memory after when the iterator is not used, and output it to the console.
long memoryAfter = GC.GetTotalMemory(false);
Console.WriteLine("Memory Used Without Iterator = \t" +
string.Format(((memoryAfter - memoryBefore) / 1000).ToString(), "n") + "kb");
}
}
// A custom class that implements IEnumerable(T). When you implement IEnumerable(T),
// you must also implement IEnumerable and IEnumerator(T).
public class StreamReaderEnumerable : IEnumerable<string>
{
private string _filePath;
public StreamReaderEnumerable(string filePath)
{
_filePath = filePath;
}
// Must implement GetEnumerator, which returns a new StreamReaderEnumerator.
public IEnumerator<string> GetEnumerator()
{
return new StreamReaderEnumerator(_filePath);
}
// Must also implement IEnumerable.GetEnumerator, but implement as a private method.
private IEnumerator GetEnumerator1()
{
return this.GetEnumerator();
}
IEnumerator IEnumerable.GetEnumerator()
{
return GetEnumerator1();
}
}
// When you implement IEnumerable(T), you must also implement IEnumerator(T),
// which will walk through the contents of the file one line at a time.
// Implementing IEnumerator(T) requires that you implement IEnumerator and IDisposable.
public class StreamReaderEnumerator : IEnumerator<string>
{
private StreamReader _sr;
public StreamReaderEnumerator(string filePath)
{
_sr = new StreamReader(filePath);
}
private string _current;
// Implement the IEnumerator(T).Current publicly, but implement
// IEnumerator.Current, which is also required, privately.
public string Current
{
get
{
if (_sr == null || _current == null)
{
throw new InvalidOperationException();
}
return _current;
}
}
private object Current1
{
get { return this.Current; }
}
object IEnumerator.Current
{
get { return Current1; }
}
// Implement MoveNext and Reset, which are required by IEnumerator.
public bool MoveNext()
{
_current = _sr.ReadLine();
if (_current == null)
return false;
return true;
}
public void Reset()
{
_sr.DiscardBufferedData();
_sr.BaseStream.Seek(0, SeekOrigin.Begin);
_current = null;
}
// Implement IDisposable, which is also implemented by IEnumerator(T).
private bool disposedValue = false;
public void Dispose()
{
Dispose(disposing: true);
GC.SuppressFinalize(this);
}
protected virtual void Dispose(bool disposing)
{
if (!this.disposedValue)
{
if (disposing)
{
// Dispose of managed resources.
}
_current = null;
if (_sr != null) {
_sr.Close();
_sr.Dispose();
}
}
this.disposedValue = true;
}
~StreamReaderEnumerator()
{
Dispose(disposing: false);
}
}
// This example displays output similar to the following:
// Found: 2
// Memory Used With Iterator = 33kb
// ---
// Found: 2
// Memory Used Without Iterator = 206kb
Imports System.IO
Imports System.Collections
Imports System.Collections.Generic
Imports System.Linq
Public Module App
' Excercise the Iterator and show that it's more performant.
Public Sub Main()
TestStreamReaderEnumerable()
Console.WriteLine("---")
TestReadingFile()
End Sub
Public Sub TestStreamReaderEnumerable()
' Check the memory before the iterator is used.
Dim memoryBefore As Long = GC.GetTotalMemory(true)
Dim stringsFound As IEnumerable(Of String)
' Open a file with the StreamReaderEnumerable and check for a string.
Try
stringsFound =
from line in new StreamReaderEnumerable("c:\temp\tempFile.txt")
where line.Contains("string to search for")
select line
Console.WriteLine("Found: {0}", stringsFound.Count())
Catch e As FileNotFoundException
Console.WriteLine("This example requires a file named C:\temp\tempFile.txt.")
Return
End Try
' Check the memory after the iterator and output it to the console.
Dim memoryAfter As Long = GC.GetTotalMemory(false)
Console.WriteLine("Memory Used with Iterator = {1}{0} kb",
(memoryAfter - memoryBefore)\1000, vbTab)
End Sub
Public Sub TestReadingFile()
Dim memoryBefore As Long = GC.GetTotalMemory(true)
Dim sr As StreamReader
Try
sr = File.OpenText("c:\temp\tempFile.txt")
Catch e As FileNotFoundException
Console.WriteLine("This example requires a file named C:\temp\tempFile.txt.")
Return
End Try
' Add the file contents to a generic list of strings.
Dim fileContents As New List(Of String)()
Do While Not sr.EndOfStream
fileContents.Add(sr.ReadLine())
Loop
' Check for the string.
Dim stringsFound =
from line in fileContents
where line.Contains("string to search for")
select line
sr.Close()
Console.WriteLine("Found: {0}", stringsFound.Count())
' Check the memory after when the iterator is not used, and output it to the console.
Dim memoryAfter As Long = GC.GetTotalMemory(False)
Console.WriteLine("Memory Used without Iterator = {1}{0} kb",
(memoryAfter - memoryBefore)\1000, vbTab)
End Sub
End Module
' A custom class that implements IEnumerable(T). When you implement IEnumerable(T),
' you must also implement IEnumerable and IEnumerator(T).
Public Class StreamReaderEnumerable : Implements IEnumerable(Of String)
Private _filePath As String
Public Sub New(filePath As String)
_filePath = filePath
End Sub
' Must implement GetEnumerator, which returns a new StreamReaderEnumerator.
Public Function GetEnumerator() As IEnumerator(Of String) _
Implements IEnumerable(Of String).GetEnumerator
Return New StreamReaderEnumerator(_filePath)
End Function
' Must also implement IEnumerable.GetEnumerator, but implement as a private method.
Private Function GetEnumerator1() As IEnumerator _
Implements IEnumerable.GetEnumerator
Return Me.GetEnumerator()
End Function
End Class
' When you implement IEnumerable(T), you must also implement IEnumerator(T),
' which will walk through the contents of the file one line at a time.
' Implementing IEnumerator(T) requires that you implement IEnumerator and IDisposable.
Public Class StreamReaderEnumerator : Implements IEnumerator(Of String)
Private _sr As StreamReader
Public Sub New(filePath As String)
_sr = New StreamReader(filePath)
End Sub
Private _current As String
' Implement the IEnumerator(T).Current Publicly, but implement
' IEnumerator.Current, which is also required, privately.
Public ReadOnly Property Current As String _
Implements IEnumerator(Of String).Current
Get
If _sr Is Nothing OrElse _current Is Nothing
Throw New InvalidOperationException()
End If
Return _current
End Get
End Property
Private ReadOnly Property Current1 As Object _
Implements IEnumerator.Current
Get
Return Me.Current
End Get
End Property
' Implement MoveNext and Reset, which are required by IEnumerator.
Public Function MoveNext() As Boolean _
Implements IEnumerator.MoveNext
_current = _sr.ReadLine()
if _current Is Nothing Then Return False
Return True
End Function
Public Sub Reset() _
Implements IEnumerator.Reset
_sr.DiscardBufferedData()
_sr.BaseStream.Seek(0, SeekOrigin.Begin)
_current = Nothing
End Sub
' Implement IDisposable, which is also implemented by IEnumerator(T).
Private disposedValue As Boolean = False
Public Sub Dispose() _
Implements IDisposable.Dispose
Dispose(disposing:=True)
GC.SuppressFinalize(Me)
End Sub
Protected Overridable Sub Dispose(disposing As Boolean)
If Not Me.disposedValue Then
If disposing Then
' Dispose of managed resources.
End If
_current = Nothing
If _sr IsNot Nothing Then
_sr.Close()
_sr.Dispose()
End If
End If
Me.disposedValue = True
End Sub
Protected Overrides Sub Finalize()
Dispose(disposing:=False)
End Sub
End Class
' This example displays output similar to the following:
' Found: 2
' Memory Used With Iterator = 33kb
' ---
' Found: 2
' Memory Used Without Iterator = 206kb
Observações
IEnumerable<T> é a interface base para coleções no System.Collections.Generic espaço de nomes como List<T>, Dictionary<TKey,TValue>, e Stack<T> outras coleções genéricas como ObservableCollection<T> e ConcurrentStack<T>. As coleções que implementam IEnumerable<T> podem ser enumeradas usando a foreach instrução.
Para a versão não genérica desta interface, veja System.Collections.IEnumerable.
IEnumerable<T> contém um único método que deve implementar ao implementar esta interface; GetEnumerator, que devolve um IEnumerator<T> objeto. O retorno IEnumerator<T> permite iterar pela coleção expondo uma Current propriedade.
Notas para Implementadores
Para se manter compatível com métodos que iteram coleções não genéricas, IEnumerable<T> implementa IEnumerable. Isto permite que uma coleção genérica seja passada a um método que espera um IEnumerable objeto.
Métodos
| Name | Description |
|---|---|
| GetEnumerator() |
Devolve um enumerador que itera pela coleção. |
Métodos da Extensão
| Name | Description |
|---|---|
| Aggregate<TSource,TAccumulate,TResult>(IEnumerable<TSource>, TAccumulate, Func<TAccumulate,TSource,TAccumulate>, Func<TAccumulate,TResult>) |
Aplica uma função acumuladora sobre uma sequência. O valor semente especificado é usado como valor inicial do acumulador, e a função especificada é usada para selecionar o valor do resultado. |
| Aggregate<TSource,TAccumulate>(IEnumerable<TSource>, TAccumulate, Func<TAccumulate,TSource,TAccumulate>) |
Aplica uma função acumuladora sobre uma sequência. O valor semente especificado é usado como valor inicial do acumulador. |
| Aggregate<TSource>(IEnumerable<TSource>, Func<TSource,TSource,TSource>) |
Aplica uma função acumuladora sobre uma sequência. |
| All<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Determina se todos os elementos de uma sequência satisfazem uma condição. |
| Ancestors<T>(IEnumerable<T>, XName) |
Devolve uma coleção filtrada de elementos que contém os antepassados de cada nó na coleção fonte. Apenas os elementos que têm correspondência XName são incluídos na coleção. |
| Ancestors<T>(IEnumerable<T>) |
Devolve uma coleção de elementos que contém os antepassados de cada nó na coleção de código-fonte. |
| Any<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Determina se algum elemento de uma sequência satisfaz uma condição. |
| Any<TSource>(IEnumerable<TSource>) |
Determina se uma sequência contém algum elemento. |
| Append<TSource>(IEnumerable<TSource>, TSource) |
Acrescenta um valor ao final da sequência. |
| AsEnumerable<TSource>(IEnumerable<TSource>) |
Retorna a entrada digitada como IEnumerable<T>. |
| AsParallel(IEnumerable) |
Permite a paralelização de uma consulta. |
| AsParallel<TSource>(IEnumerable<TSource>) |
Permite a paralelização de uma consulta. |
| AsQueryable(IEnumerable) |
Converte um IEnumerable para um IQueryable. |
| AsQueryable<TElement>(IEnumerable<TElement>) |
Converte um genérico IEnumerable<T> num genérico IQueryable<T>. |
| Average<TSource>(IEnumerable<TSource>, Func<TSource,Decimal>) |
Calcula a média de uma sequência de Decimal valores obtidos invocando uma função de transformação em cada elemento da sequência de entrada. |
| Average<TSource>(IEnumerable<TSource>, Func<TSource,Double>) |
Calcula a média de uma sequência de Double valores obtidos invocando uma função de transformação em cada elemento da sequência de entrada. |
| Average<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) |
Calcula a média de uma sequência de Int32 valores obtidos invocando uma função de transformação em cada elemento da sequência de entrada. |
| Average<TSource>(IEnumerable<TSource>, Func<TSource,Int64>) |
Calcula a média de uma sequência de Int64 valores obtidos invocando uma função de transformação em cada elemento da sequência de entrada. |
| Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Decimal>>) |
Calcula a média de uma sequência de valores anuláveis Decimal que são obtidos invocando uma função de transformação em cada elemento da sequência de entrada. |
| Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>) |
Calcula a média de uma sequência de valores anuláveis Double que são obtidos invocando uma função de transformação em cada elemento da sequência de entrada. |
| Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>) |
Calcula a média de uma sequência de valores anuláveis Int32 que são obtidos invocando uma função de transformação em cada elemento da sequência de entrada. |
| Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>) |
Calcula a média de uma sequência de valores anuláveis Int64 que são obtidos invocando uma função de transformação em cada elemento da sequência de entrada. |
| Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>) |
Calcula a média de uma sequência de valores anuláveis Single que são obtidos invocando uma função de transformação em cada elemento da sequência de entrada. |
| Average<TSource>(IEnumerable<TSource>, Func<TSource,Single>) |
Calcula a média de uma sequência de Single valores obtidos invocando uma função de transformação em cada elemento da sequência de entrada. |
| Cast<TResult>(IEnumerable) |
Conjura os elementos de an IEnumerable para o tipo especificado. |
| Concat<TSource>(IEnumerable<TSource>, IEnumerable<TSource>) |
Concatena duas sequências. |
| Contains<TSource>(IEnumerable<TSource>, TSource, IEqualityComparer<TSource>) |
Determina se uma sequência contém um elemento especificado usando um .IEqualityComparer<T> |
| Contains<TSource>(IEnumerable<TSource>, TSource) |
Determina se uma sequência contém um elemento especificado usando o comparador de igualdade padrão. |
| CopyToDataTable<T>(IEnumerable<T>, DataTable, LoadOption, FillErrorEventHandler) |
Copia DataRow objetos para o especificado DataTable, dado um objeto de entrada IEnumerable<T> onde o parâmetro |
| CopyToDataTable<T>(IEnumerable<T>, DataTable, LoadOption) |
Copia DataRow objetos para o especificado DataTable, dado um objeto de entrada IEnumerable<T> onde o parâmetro |
| CopyToDataTable<T>(IEnumerable<T>) |
Devolve a DataTable que contém cópias dos DataRow objetos, dado um objeto de entrada IEnumerable<T> onde o parâmetro |
| Count<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Devolve um número que representa quantos elementos na sequência especificada satisfazem uma condição. |
| Count<TSource>(IEnumerable<TSource>) |
Devolve o número de elementos numa sequência. |
| DefaultIfEmpty<TSource>(IEnumerable<TSource>, TSource) |
Devolve os elementos da sequência especificada ou o valor especificado numa coleção singleton se a sequência estiver vazia. |
| DefaultIfEmpty<TSource>(IEnumerable<TSource>) |
Devolve os elementos da sequência especificada ou o valor padrão do parâmetro de tipo numa coleção singleton se a sequência estiver vazia. |
| DescendantNodes<T>(IEnumerable<T>) |
Devolve uma coleção dos nós descendentes de cada documento e elemento da coleção de origem. |
| Descendants<T>(IEnumerable<T>, XName) |
Devolve uma coleção filtrada de elementos que contém os elementos descendentes de cada elemento e documento da coleção de origem. Apenas os elementos que têm correspondência XName são incluídos na coleção. |
| Descendants<T>(IEnumerable<T>) |
Devolve uma coleção de elementos que contém os elementos descendentes de cada elemento e documento da coleção fonte. |
| Distinct<TSource>(IEnumerable<TSource>, IEqualityComparer<TSource>) |
Devolve elementos distintos de uma sequência usando um especificado IEqualityComparer<T> para comparar valores. |
| Distinct<TSource>(IEnumerable<TSource>) |
Devolve elementos distintos de uma sequência usando o comparador de igualdade padrão para comparar valores. |
| ElementAt<TSource>(IEnumerable<TSource>, Int32) |
Devolve o elemento num índice especificado numa sequência. |
| ElementAtOrDefault<TSource>(IEnumerable<TSource>, Int32) |
Devolve o elemento num índice especificado numa sequência ou um valor padrão se o índice estiver fora do intervalo. |
| Elements<T>(IEnumerable<T>, XName) |
Devolve uma coleção filtrada dos elementos filhos de cada elemento e documento da coleção de origem. Apenas os elementos que têm correspondência XName são incluídos na coleção. |
| Elements<T>(IEnumerable<T>) |
Devolve uma coleção dos elementos filhos de cada elemento e documento da coleção de origem. |
| Except<TSource>(IEnumerable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>) |
Produz a diferença de conjuntos de duas sequências usando o especificado IEqualityComparer<T> para comparar valores. |
| Except<TSource>(IEnumerable<TSource>, IEnumerable<TSource>) |
Produz a diferença de conjuntos de duas sequências usando o comparador de igualdade por defeito para comparar valores. |
| First<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Devolve o primeiro elemento numa sequência que satisfaz uma condição especificada. |
| First<TSource>(IEnumerable<TSource>) |
Devolve o primeiro elemento de uma sequência. |
| FirstOrDefault<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Devolve o primeiro elemento da sequência que satisfaz uma condição ou um valor padrão se tal elemento não for encontrado. |
| FirstOrDefault<TSource>(IEnumerable<TSource>) |
Devolve o primeiro elemento de uma sequência, ou um valor padrão se a sequência não contiver elementos. |
| GroupBy<TSource,TKey,TElement,TResult>(IEnumerable<TSource>, Func<TSource, TKey>, Func<TSource,TElement>, Func<TKey,IEnumerable<TElement>, TResult>, IEqualityComparer<TKey>) |
Agrupa os elementos de uma sequência de acordo com uma função seletora de teclas especificada e cria um valor de resultado a partir de cada grupo e da sua chave. Os valores-chave são comparados usando um comparador especificado, e os elementos de cada grupo são projetados usando uma função especificada. |
| GroupBy<TSource,TKey,TElement,TResult>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, Func<TKey,IEnumerable<TElement>,TResult>) |
Agrupa os elementos de uma sequência de acordo com uma função seletora de teclas especificada e cria um valor de resultado a partir de cada grupo e da sua chave. Os elementos de cada grupo são projetados usando uma função especificada. |
| GroupBy<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, IEqualityComparer<TKey>) |
Agrupa os elementos de uma sequência de acordo com uma função seletora de tecla. As chaves são comparadas usando um comparador e os elementos de cada grupo são projetados usando uma função especificada. |
| GroupBy<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>) |
Agrupa os elementos de uma sequência de acordo com uma função seletora de teclas especificada e projeta os elementos para cada grupo usando uma função especificada. |
| GroupBy<TSource,TKey,TResult>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TKey,IEnumerable<TSource>,TResult>, IEqualityComparer<TKey>) |
Agrupa os elementos de uma sequência de acordo com uma função seletora de teclas especificada e cria um valor de resultado a partir de cada grupo e da sua chave. As chaves são comparadas usando um comparador especificado. |
| GroupBy<TSource,TKey,TResult>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TKey,IEnumerable<TSource>,TResult>) |
Agrupa os elementos de uma sequência de acordo com uma função seletora de teclas especificada e cria um valor de resultado a partir de cada grupo e da sua chave. |
| GroupBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
Agrupa os elementos de uma sequência de acordo com uma função seletora de teclas especificada e compara as chaves usando um comparador especificado. |
| GroupBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Agrupa os elementos de uma sequência de acordo com uma função seletora de teclas especificada. |
| GroupJoin<TOuter,TInner,TKey,TResult>(IEnumerable<TOuter>, IEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,IEnumerable<TInner>, TResult>, IEqualityComparer<TKey>) |
Correlaciona os elementos de duas sequências com base na igualdade de chave e agrupa os resultados. Um especificado IEqualityComparer<T> é usado para comparar tonalidades. |
| GroupJoin<TOuter,TInner,TKey,TResult>(IEnumerable<TOuter>, IEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,IEnumerable<TInner>, TResult>) |
Correlaciona os elementos de duas sequências com base na igualdade das chaves e agrupa os resultados. O comparador de igualdade por defeito é usado para comparar chaves. |
| InDocumentOrder<T>(IEnumerable<T>) |
Devolve uma coleção de nós que contém todos os nós da coleção de código-fonte, ordenados pela ordem dos documentos. |
| Intersect<TSource>(IEnumerable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>) |
Produz a interseção conjunta de duas sequências usando o especificado IEqualityComparer<T> para comparar valores. |
| Intersect<TSource>(IEnumerable<TSource>, IEnumerable<TSource>) |
Produz a interseção conjunta de duas sequências usando o comparador de igualdade padrão para comparar valores. |
| Join<TOuter,TInner,TKey,TResult>(IEnumerable<TOuter>, IEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,TInner,TResult>, IEqualityComparer<TKey>) |
Correlaciona os elementos de duas sequências com base nas chaves correspondentes. Um especificado IEqualityComparer<T> é usado para comparar tonalidades. |
| Join<TOuter,TInner,TKey,TResult>(IEnumerable<TOuter>, IEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,TInner,TResult>) |
Correlaciona os elementos de duas sequências com base nas chaves correspondentes. O comparador de igualdade por defeito é usado para comparar chaves. |
| Last<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Devolve o último elemento de uma sequência que satisfaz uma condição especificada. |
| Last<TSource>(IEnumerable<TSource>) |
Devolve o último elemento de uma sequência. |
| LastOrDefault<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Devolve o último elemento de uma sequência que satisfaz uma condição ou um valor padrão se tal elemento não for encontrado. |
| LastOrDefault<TSource>(IEnumerable<TSource>) |
Devolve o último elemento de uma sequência, ou um valor padrão se a sequência não contiver elementos. |
| LongCount<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Devolve e Int64 que representa quantos elementos numa sequência satisfazem uma condição. |
| LongCount<TSource>(IEnumerable<TSource>) |
Retorna e Int64 que representa o número total de elementos numa sequência. |
| Max<TSource,TResult>(IEnumerable<TSource>, Func<TSource,TResult>) |
Invoca uma função de transformação em cada elemento de uma sequência genérica e devolve o valor máximo resultante. |
| Max<TSource>(IEnumerable<TSource>, Func<TSource,Decimal>) |
Invoca uma função de transformação em cada elemento de uma sequência e devolve o valor máximo Decimal . |
| Max<TSource>(IEnumerable<TSource>, Func<TSource,Double>) |
Invoca uma função de transformação em cada elemento de uma sequência e devolve o valor máximo Double . |
| Max<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) |
Invoca uma função de transformação em cada elemento de uma sequência e devolve o valor máximo Int32 . |
| Max<TSource>(IEnumerable<TSource>, Func<TSource,Int64>) |
Invoca uma função de transformação em cada elemento de uma sequência e devolve o valor máximo Int64 . |
| Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Decimal>>) |
Invoca uma função de transformação em cada elemento de uma sequência e devolve o valor máximo anulável Decimal . |
| Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>) |
Invoca uma função de transformação em cada elemento de uma sequência e devolve o valor máximo anulável Double . |
| Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>) |
Invoca uma função de transformação em cada elemento de uma sequência e devolve o valor máximo anulável Int32 . |
| Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>) |
Invoca uma função de transformação em cada elemento de uma sequência e devolve o valor máximo anulável Int64 . |
| Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>) |
Invoca uma função de transformação em cada elemento de uma sequência e devolve o valor máximo anulável Single . |
| Max<TSource>(IEnumerable<TSource>, Func<TSource,Single>) |
Invoca uma função de transformação em cada elemento de uma sequência e devolve o valor máximo Single . |
| Max<TSource>(IEnumerable<TSource>) |
Devolve o valor máximo numa sequência genérica. |
| Min<TSource,TResult>(IEnumerable<TSource>, Func<TSource,TResult>) |
Invoca uma função de transformação em cada elemento de uma sequência genérica e devolve o valor mínimo resultante. |
| Min<TSource>(IEnumerable<TSource>, Func<TSource,Decimal>) |
Invoca uma função de transformação em cada elemento de uma sequência e devolve o valor mínimo Decimal . |
| Min<TSource>(IEnumerable<TSource>, Func<TSource,Double>) |
Invoca uma função de transformação em cada elemento de uma sequência e devolve o valor mínimo Double . |
| Min<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) |
Invoca uma função de transformação em cada elemento de uma sequência e devolve o valor mínimo Int32 . |
| Min<TSource>(IEnumerable<TSource>, Func<TSource,Int64>) |
Invoca uma função de transformação em cada elemento de uma sequência e devolve o valor mínimo Int64 . |
| Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Decimal>>) |
Invoca uma função de transformação em cada elemento de uma sequência e devolve o valor mínimo anulável Decimal . |
| Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>) |
Invoca uma função de transformação em cada elemento de uma sequência e devolve o valor mínimo anulável Double . |
| Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>) |
Invoca uma função de transformação em cada elemento de uma sequência e devolve o valor mínimo anulável Int32 . |
| Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>) |
Invoca uma função de transformação em cada elemento de uma sequência e devolve o valor mínimo anulável Int64 . |
| Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>) |
Invoca uma função de transformação em cada elemento de uma sequência e devolve o valor mínimo anulável Single . |
| Min<TSource>(IEnumerable<TSource>, Func<TSource,Single>) |
Invoca uma função de transformação em cada elemento de uma sequência e devolve o valor mínimo Single . |
| Min<TSource>(IEnumerable<TSource>) |
Devolve o valor mínimo numa sequência genérica. |
| Nodes<T>(IEnumerable<T>) |
Devolve uma coleção dos nós filhos de cada documento e elemento da coleção de código-fonte. |
| OfType<TResult>(IEnumerable) |
Filtra os elementos de um IEnumerable com base num tipo especificado. |
| OrderBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IComparer<TKey>) |
Ordena os elementos de uma sequência por ordem crescente usando um comparador especificado. |
| OrderBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Ordena os elementos de uma sequência por ordem crescente de acordo com uma chave. |
| OrderByDescending<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IComparer<TKey>) |
Ordena os elementos de uma sequência por ordem decrescente usando um comparador especificado. |
| OrderByDescending<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Ordena os elementos de uma sequência por ordem decrescente de acordo com uma chave. |
| Prepend<TSource>(IEnumerable<TSource>, TSource) |
Acrescenta um valor ao início da sequência. |
| Remove<T>(IEnumerable<T>) |
Remove todos os nós da coleção de origem do seu nó pai. |
| Reverse<TSource>(IEnumerable<TSource>) |
Inverte a ordem dos elementos numa sequência. |
| Select<TSource,TResult>(IEnumerable<TSource>, Func<TSource,Int32,TResult>) |
Projeta cada elemento de uma sequência numa nova forma incorporando o índice do elemento. |
| Select<TSource,TResult>(IEnumerable<TSource>, Func<TSource,TResult>) |
Projeta cada elemento de uma sequência numa nova forma. |
| SelectMany<TSource,TCollection,TResult>(IEnumerable<TSource>, Func<TSource,IEnumerable<TCollection>>, Func<TSource,TCollection,TResult>) |
Projeta cada elemento de uma sequência para um IEnumerable<T>, achata as sequências resultantes numa sequência e invoca uma função seletora de resultados em cada elemento nelas. |
| SelectMany<TSource,TCollection,TResult>(IEnumerable<TSource>, Func<TSource,Int32,IEnumerable<TCollection>>, Func<TSource,TCollection,TResult>) |
Projeta cada elemento de uma sequência para um IEnumerable<T>, achata as sequências resultantes numa sequência e invoca uma função seletora de resultados em cada elemento nelas. O índice de cada elemento fonte é usado na forma intermédia projetada desse elemento. |
| SelectMany<TSource,TResult>(IEnumerable<TSource>, Func<TSource,IEnumerable<TResult>>) |
Projeta cada elemento de uma sequência para um IEnumerable<T> e achata as sequências resultantes numa sequência. |
| SelectMany<TSource,TResult>(IEnumerable<TSource>, Func<TSource,Int32,IEnumerable<TResult>>) |
Projeta cada elemento de uma sequência para um IEnumerable<T>, e achata as sequências resultantes numa só sequência. O índice de cada elemento fonte é usado na forma projetada desse elemento. |
| SequenceEqual<TSource>(IEnumerable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>) |
Determina se duas sequências são iguais comparando os seus elementos usando um especificado IEqualityComparer<T>. |
| SequenceEqual<TSource>(IEnumerable<TSource>, IEnumerable<TSource>) |
Determina se duas sequências são iguais comparando os elementos usando o comparador de igualdade padrão para o seu tipo. |
| Single<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Devolve o único elemento de uma sequência que satisfaz uma condição especificada, e lança uma exceção se existirem mais do que um desses elementos. |
| Single<TSource>(IEnumerable<TSource>) |
Devolve o único elemento de uma sequência e lança uma exceção se não houver exatamente um elemento na sequência. |
| SingleOrDefault<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Devolve o único elemento de uma sequência que satisfaz uma condição especificada ou um valor padrão se tal elemento não existir; este método lança uma exceção se mais do que um elemento satisfizerem a condição. |
| SingleOrDefault<TSource>(IEnumerable<TSource>) |
Devolve o único elemento de uma sequência, ou um valor padrão se a sequência estiver vazia; este método lança uma exceção se houver mais do que um elemento na sequência. |
| Skip<TSource>(IEnumerable<TSource>, Int32) |
Ignora um número especificado de elementos numa sequência e depois devolve os elementos restantes. |
| SkipLast<TSource>(IEnumerable<TSource>, Int32) |
Devolve uma nova coleção enumerável que contém os elementos de |
| SkipWhile<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Ignora elementos numa sequência desde que uma condição especificada seja verdadeira e depois devolve os elementos restantes. |
| SkipWhile<TSource>(IEnumerable<TSource>, Func<TSource,Int32,Boolean>) |
Ignora elementos numa sequência desde que uma condição especificada seja verdadeira e depois devolve os elementos restantes. O índice do elemento é usado na lógica da função de predicado. |
| Sum<TSource>(IEnumerable<TSource>, Func<TSource,Decimal>) |
Calcula a soma da sequência de Decimal valores obtidos invocando uma função de transformação em cada elemento da sequência de entrada. |
| Sum<TSource>(IEnumerable<TSource>, Func<TSource,Double>) |
Calcula a soma da sequência de Double valores obtidos invocando uma função de transformação em cada elemento da sequência de entrada. |
| Sum<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) |
Calcula a soma da sequência de Int32 valores obtidos invocando uma função de transformação em cada elemento da sequência de entrada. |
| Sum<TSource>(IEnumerable<TSource>, Func<TSource,Int64>) |
Calcula a soma da sequência de Int64 valores obtidos invocando uma função de transformação em cada elemento da sequência de entrada. |
| Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Decimal>>) |
Calcula a soma da sequência de valores nulos Decimal que são obtidos ao invocar uma função de transformação em cada elemento da sequência de entrada. |
| Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>) |
Calcula a soma da sequência de valores nulos Double que são obtidos ao invocar uma função de transformação em cada elemento da sequência de entrada. |
| Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>) |
Calcula a soma da sequência de valores nulos Int32 que são obtidos ao invocar uma função de transformação em cada elemento da sequência de entrada. |
| Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>) |
Calcula a soma da sequência de valores nulos Int64 que são obtidos ao invocar uma função de transformação em cada elemento da sequência de entrada. |
| Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>) |
Calcula a soma da sequência de valores nulos Single que são obtidos ao invocar uma função de transformação em cada elemento da sequência de entrada. |
| Sum<TSource>(IEnumerable<TSource>, Func<TSource,Single>) |
Calcula a soma da sequência de Single valores obtidos invocando uma função de transformação em cada elemento da sequência de entrada. |
| Take<TSource>(IEnumerable<TSource>, Int32) |
Devolve um número especificado de elementos contíguos do início de uma sequência. |
| TakeLast<TSource>(IEnumerable<TSource>, Int32) |
Devolve uma nova coleção enumerável que contém os últimos |
| TakeWhile<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Devolve elementos de uma sequência desde que uma condição especificada seja verdadeira. |
| TakeWhile<TSource>(IEnumerable<TSource>, Func<TSource,Int32,Boolean>) |
Devolve elementos de uma sequência desde que uma condição especificada seja verdadeira. O índice do elemento é usado na lógica da função de predicado. |
| ToArray<TSource>(IEnumerable<TSource>) |
Cria um array a partir de um IEnumerable<T>. |
| ToDictionary<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, IEqualityComparer<TKey>) |
Cria a Dictionary<TKey,TValue> partir de uma IEnumerable<T> função seletora de teclas especificada, um comparador e uma função seletora de elementos. |
| ToDictionary<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>) |
Cria um Dictionary<TKey,TValue> a partir de um IEnumerable<T> de acordo com as funções seletoras de teclas e seletores de elementos especificadas. |
| ToDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
Cria um Dictionary<TKey,TValue> a partir de um IEnumerable<T> de acordo com uma função seletora de teclas especificada e um comparador de chaves. |
| ToDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Cria um Dictionary<TKey,TValue> a partir de um IEnumerable<T> de acordo com uma função seletor de teclas especificada. |
| ToHashSet<TSource>(IEnumerable<TSource>, IEqualityComparer<TSource>) |
Cria um HashSet<T> a partir de um IEnumerable<T> usando o |
| ToHashSet<TSource>(IEnumerable<TSource>) |
Cria um HashSet<T> a partir de um IEnumerable<T>. |
| ToImmutableArray<TSource>(IEnumerable<TSource>) |
Cria um array imutável a partir da coleção especificada. |
| ToImmutableDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>, IEqualityComparer<TKey>, IEqualityComparer<TValue>) |
Enumera e transforma uma sequência, e produz um dicionário imutável do seu conteúdo usando os comparadores de chave e valor especificados. |
| ToImmutableDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>, IEqualityComparer<TKey>) |
Enumera e transforma uma sequência, e produz um dicionário imutável do seu conteúdo usando o comparador de chaves especificado. |
| ToImmutableDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>) |
Enumera e transforma uma sequência, e produz um dicionário imutável do seu conteúdo. |
| ToImmutableDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
Constrói um dicionário imutável baseado numa transformação de uma sequência. |
| ToImmutableDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Constrói um dicionário imutável a partir de uma coleção existente de elementos, aplicando uma função de transformação às chaves fonte. |
| ToImmutableHashSet<TSource>(IEnumerable<TSource>, IEqualityComparer<TSource>) |
Enumera uma sequência, produz um conjunto de hash imutável do seu conteúdo e utiliza o comparador de igualdade especificado para o tipo de conjunto. |
| ToImmutableHashSet<TSource>(IEnumerable<TSource>) |
Enumera uma sequência e produz um conjunto de hash imutável do seu conteúdo. |
| ToImmutableList<TSource>(IEnumerable<TSource>) |
Enumera uma sequência e produz uma lista imutável do seu conteúdo. |
| ToImmutableSortedDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>, IComparer<TKey>, IEqualityComparer<TValue>) |
Enumera e transforma uma sequência, e produz um dicionário ordenado imutável do seu conteúdo usando os comparadores de chave e valor especificados. |
| ToImmutableSortedDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>, IComparer<TKey>) |
Enumera e transforma uma sequência, e produz um dicionário ordenado imutável do seu conteúdo usando o comparador de chaves especificado. |
| ToImmutableSortedDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>) |
Enumera e transforma uma sequência, produzindo um dicionário ordenado imutável do seu conteúdo. |
| ToImmutableSortedSet<TSource>(IEnumerable<TSource>, IComparer<TSource>) |
Enumera uma sequência, produz um conjunto ordenado imutável do seu conteúdo e utiliza o comparador especificado. |
| ToImmutableSortedSet<TSource>(IEnumerable<TSource>) |
Enumera uma sequência e produz um conjunto ordenado imutável do seu conteúdo. |
| ToList<TSource>(IEnumerable<TSource>) |
Cria um List<T> a partir de um IEnumerable<T>. |
| ToLookup<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, IEqualityComparer<TKey>) |
Cria a Lookup<TKey,TElement> partir de uma IEnumerable<T> função seletora de teclas especificada, um comparador e uma função seletor de elementos. |
| ToLookup<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>) |
Cria um Lookup<TKey,TElement> a partir de um IEnumerable<T> de acordo com as funções seletoras de teclas e seletores de elementos especificadas. |
| ToLookup<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
Cria um Lookup<TKey,TElement> a partir de um IEnumerable<T> de acordo com uma função seletora de teclas especificada e um comparador de chaves. |
| ToLookup<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Cria um Lookup<TKey,TElement> a partir de um IEnumerable<T> de acordo com uma função seletor de teclas especificada. |
| Union<TSource>(IEnumerable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>) |
Produz a união de conjuntos de duas sequências usando um especificado IEqualityComparer<T>. |
| Union<TSource>(IEnumerable<TSource>, IEnumerable<TSource>) |
Produz a união conjunta de duas sequências usando o comparador de igualdade padrão. |
| Where<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Filtra uma sequência de valores com base num predicado. |
| Where<TSource>(IEnumerable<TSource>, Func<TSource,Int32,Boolean>) |
Filtra uma sequência de valores com base num predicado. O índice de cada elemento é usado na lógica da função de predicado. |
| Zip<TFirst,TSecond,TResult>(IEnumerable<TFirst>, IEnumerable<TSecond>, Func<TFirst,TSecond,TResult>) |
Aplica uma função especificada aos elementos correspondentes de duas sequências, produzindo uma sequência dos resultados. |