IEnumerable<T> Gränssnitt
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Exponerar uppräknaren, som stöder en enkel iteration över en samling av en angiven typ.
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
Typparametrar
- T
Vilken typ av objekt som ska räknas upp.
Det här är en covariant-typparameter. Det innebär att du kan använda antingen den typ du angett eller en typ som är mer härledd. Mer information om kovarians och kontravarians finns i Kovarians och kontravarians i Generisk typ.- Härledda
- Implementeringar
Exempel
I följande exempel visas hur du implementerar IEnumerable<T> gränssnittet och hur du använder implementeringen för att skapa en LINQ-fråga. När du implementerar IEnumerable<T>måste du också implementera IEnumerator<T> eller, endast för C#, använda nyckelordet yield . Implementering IEnumerator<T> måste IDisposable också implementeras, vilket visas i det här exemplet.
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
Kommentarer
IEnumerable<T> är basgränssnittet för samlingar i System.Collections.Generic namnområdet, till exempel List<T>, Dictionary<TKey,TValue>och Stack<T> andra generiska samlingar som ObservableCollection<T> och ConcurrentStack<T>. Samlingar som implementerar IEnumerable<T> kan räknas upp med hjälp av -instruktionen foreach .
Den icke-generiska versionen av det här gränssnittet finns i System.Collections.IEnumerable.
IEnumerable<T> innehåller en enda metod som du måste implementera när du implementerar det här gränssnittet. GetEnumerator, som returnerar ett IEnumerator<T> objekt. Den returnerade IEnumerator<T> ger möjlighet att iterera genom samlingen genom att exponera en Current egenskap.
Anteckningar till implementerare
Implementerar IEnumerableför att förbli kompatibel med metoder som itererar icke-generiska samlingarIEnumerable<T>. Detta gör att en allmän samling kan skickas till en metod som förväntar sig ett IEnumerable objekt.
Metoder
| Name | Description |
|---|---|
| GetEnumerator() |
Returnerar en uppräkning som itererar genom samlingen. |
Tilläggsmetoder
| Name | Description |
|---|---|
| Aggregate<TSource,TAccumulate,TResult>(IEnumerable<TSource>, TAccumulate, Func<TAccumulate,TSource,TAccumulate>, Func<TAccumulate,TResult>) |
Använder en ackumulatorfunktion över en sekvens. Det angivna startvärdet används som det initiala ackumulatorvärdet och den angivna funktionen används för att välja resultatvärdet. |
| Aggregate<TSource,TAccumulate>(IEnumerable<TSource>, TAccumulate, Func<TAccumulate,TSource,TAccumulate>) |
Använder en ackumulatorfunktion över en sekvens. Det angivna startvärdet används som det initiala ackumulatorvärdet. |
| Aggregate<TSource>(IEnumerable<TSource>, Func<TSource,TSource,TSource>) |
Använder en ackumulatorfunktion över en sekvens. |
| All<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Avgör om alla element i en sekvens uppfyller ett villkor. |
| Ancestors<T>(IEnumerable<T>, XName) |
Returnerar en filtrerad samling element som innehåller överordnade element för varje nod i källsamlingen. Endast element som har matchning XName ingår i samlingen. |
| Ancestors<T>(IEnumerable<T>) |
Returnerar en samling element som innehåller överordnade element för varje nod i källsamlingen. |
| Any<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Avgör om något element i en sekvens uppfyller ett villkor. |
| Any<TSource>(IEnumerable<TSource>) |
Avgör om en sekvens innehåller några element. |
| Append<TSource>(IEnumerable<TSource>, TSource) |
Lägger till ett värde i slutet av sekvensen. |
| AsEnumerable<TSource>(IEnumerable<TSource>) |
Returnerar indata som skrivits som IEnumerable<T>. |
| AsParallel(IEnumerable) |
Möjliggör parallellisering av en fråga. |
| AsParallel<TSource>(IEnumerable<TSource>) |
Möjliggör parallellisering av en fråga. |
| AsQueryable(IEnumerable) |
Konverterar en IEnumerable till en IQueryable. |
| AsQueryable<TElement>(IEnumerable<TElement>) |
Konverterar en allmän IEnumerable<T> till en allmän IQueryable<T>. |
| Average<TSource>(IEnumerable<TSource>, Func<TSource,Decimal>) |
Beräknar medelvärdet av en sekvens med Decimal värden som erhålls genom att anropa en transformeringsfunktion på varje element i indatasekvensen. |
| Average<TSource>(IEnumerable<TSource>, Func<TSource,Double>) |
Beräknar medelvärdet av en sekvens med Double värden som erhålls genom att anropa en transformeringsfunktion på varje element i indatasekvensen. |
| Average<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) |
Beräknar medelvärdet av en sekvens med Int32 värden som erhålls genom att anropa en transformeringsfunktion på varje element i indatasekvensen. |
| Average<TSource>(IEnumerable<TSource>, Func<TSource,Int64>) |
Beräknar medelvärdet av en sekvens med Int64 värden som erhålls genom att anropa en transformeringsfunktion på varje element i indatasekvensen. |
| Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Decimal>>) |
Beräknar medelvärdet av en sekvens med null-värden Decimal som erhålls genom att anropa en transformeringsfunktion på varje element i indatasekvensen. |
| Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>) |
Beräknar medelvärdet av en sekvens med null-värden Double som erhålls genom att anropa en transformeringsfunktion på varje element i indatasekvensen. |
| Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>) |
Beräknar medelvärdet av en sekvens med null-värden Int32 som erhålls genom att anropa en transformeringsfunktion på varje element i indatasekvensen. |
| Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>) |
Beräknar medelvärdet av en sekvens med null-värden Int64 som erhålls genom att anropa en transformeringsfunktion på varje element i indatasekvensen. |
| Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>) |
Beräknar medelvärdet av en sekvens med null-värden Single som erhålls genom att anropa en transformeringsfunktion på varje element i indatasekvensen. |
| Average<TSource>(IEnumerable<TSource>, Func<TSource,Single>) |
Beräknar medelvärdet av en sekvens med Single värden som erhålls genom att anropa en transformeringsfunktion på varje element i indatasekvensen. |
| Cast<TResult>(IEnumerable) |
Omvandlar elementen i en IEnumerable till den angivna typen. |
| Concat<TSource>(IEnumerable<TSource>, IEnumerable<TSource>) |
Sammanfogar två sekvenser. |
| Contains<TSource>(IEnumerable<TSource>, TSource, IEqualityComparer<TSource>) |
Avgör om en sekvens innehåller ett angivet element med hjälp av en angiven IEqualityComparer<T>. |
| Contains<TSource>(IEnumerable<TSource>, TSource) |
Avgör om en sekvens innehåller ett angivet element med hjälp av standardjämförlikningsjämföraren. |
| CopyToDataTable<T>(IEnumerable<T>, DataTable, LoadOption, FillErrorEventHandler) |
Kopierar DataRow objekt till angivet DataTable, givet ett indataobjekt IEnumerable<T> där den generiska parametern |
| CopyToDataTable<T>(IEnumerable<T>, DataTable, LoadOption) |
Kopierar DataRow objekt till angivet DataTable, givet ett indataobjekt IEnumerable<T> där den generiska parametern |
| CopyToDataTable<T>(IEnumerable<T>) |
Returnerar en DataTable som innehåller kopior av objekten DataRow , givet ett indataobjekt IEnumerable<T> där den generiska parametern |
| Count<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Returnerar ett tal som representerar hur många element i den angivna sekvensen som uppfyller ett villkor. |
| Count<TSource>(IEnumerable<TSource>) |
Returnerar antalet element i en sekvens. |
| DefaultIfEmpty<TSource>(IEnumerable<TSource>, TSource) |
Returnerar elementen i den angivna sekvensen eller det angivna värdet i en singleton-samling om sekvensen är tom. |
| DefaultIfEmpty<TSource>(IEnumerable<TSource>) |
Returnerar elementen i den angivna sekvensen eller typparameterns standardvärde i en singleton-samling om sekvensen är tom. |
| DescendantNodes<T>(IEnumerable<T>) |
Returnerar en samling underordnade noder i varje dokument och element i källsamlingen. |
| Descendants<T>(IEnumerable<T>, XName) |
Returnerar en filtrerad samling element som innehåller underordnade element för varje element och dokument i källsamlingen. Endast element som har matchning XName ingår i samlingen. |
| Descendants<T>(IEnumerable<T>) |
Returnerar en samling element som innehåller underordnade element för varje element och dokument i källsamlingen. |
| Distinct<TSource>(IEnumerable<TSource>, IEqualityComparer<TSource>) |
Returnerar distinkta element från en sekvens med hjälp av en angiven IEqualityComparer<T> för att jämföra värden. |
| Distinct<TSource>(IEnumerable<TSource>) |
Returnerar distinkta element från en sekvens med hjälp av standardjämlikhetsjämföraren för att jämföra värden. |
| ElementAt<TSource>(IEnumerable<TSource>, Int32) |
Returnerar elementet vid ett angivet index i en sekvens. |
| ElementAtOrDefault<TSource>(IEnumerable<TSource>, Int32) |
Returnerar elementet vid ett angivet index i en sekvens eller ett standardvärde om indexet ligger utom intervallet. |
| Elements<T>(IEnumerable<T>, XName) |
Returnerar en filtrerad samling av underordnade element i varje element och dokument i källsamlingen. Endast element som har matchning XName ingår i samlingen. |
| Elements<T>(IEnumerable<T>) |
Returnerar en samling underordnade element i varje element och dokument i källsamlingen. |
| Except<TSource>(IEnumerable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>) |
Skapar den inställda skillnaden mellan två sekvenser med hjälp av angivna IEqualityComparer<T> för att jämföra värden. |
| Except<TSource>(IEnumerable<TSource>, IEnumerable<TSource>) |
Ger den angivna skillnaden mellan två sekvenser genom att använda standardjämlikhetsjämförlikningsjämföraren för att jämföra värden. |
| First<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Returnerar det första elementet i en sekvens som uppfyller ett angivet villkor. |
| First<TSource>(IEnumerable<TSource>) |
Returnerar det första elementet i en sekvens. |
| FirstOrDefault<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Returnerar det första elementet i sekvensen som uppfyller ett villkor eller ett standardvärde om inget sådant element hittas. |
| FirstOrDefault<TSource>(IEnumerable<TSource>) |
Returnerar det första elementet i en sekvens eller ett standardvärde om sekvensen inte innehåller några element. |
| GroupBy<TSource,TKey,TElement,TResult>(IEnumerable<TSource>, Func<TSource, TKey>, Func<TSource,TElement>, Func<TKey,IEnumerable<TElement>, TResult>, IEqualityComparer<TKey>) |
Grupperar elementen i en sekvens enligt en angiven nyckelväljare och skapar ett resultatvärde från varje grupp och dess nyckel. Nyckelvärden jämförs med en angiven jämförelse, och elementen i varje grupp projiceras med hjälp av en angiven funktion. |
| GroupBy<TSource,TKey,TElement,TResult>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, Func<TKey,IEnumerable<TElement>,TResult>) |
Grupperar elementen i en sekvens enligt en angiven nyckelväljare och skapar ett resultatvärde från varje grupp och dess nyckel. Elementen i varje grupp projiceras med hjälp av en angiven funktion. |
| GroupBy<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, IEqualityComparer<TKey>) |
Grupperar elementen i en sekvens enligt en nyckelväljare. Nycklarna jämförs med en jämförelse och varje grupps element projiceras med hjälp av en angiven funktion. |
| GroupBy<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>) |
Grupperar elementen i en sekvens enligt en angiven nyckelväljare och projicerar elementen för varje grupp med hjälp av en angiven funktion. |
| GroupBy<TSource,TKey,TResult>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TKey,IEnumerable<TSource>,TResult>, IEqualityComparer<TKey>) |
Grupperar elementen i en sekvens enligt en angiven nyckelväljare och skapar ett resultatvärde från varje grupp och dess nyckel. Nycklarna jämförs med en angiven jämförelse. |
| GroupBy<TSource,TKey,TResult>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TKey,IEnumerable<TSource>,TResult>) |
Grupperar elementen i en sekvens enligt en angiven nyckelväljare och skapar ett resultatvärde från varje grupp och dess nyckel. |
| GroupBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
Grupperar elementen i en sekvens enligt en angiven nyckelväljare och jämför nycklarna med hjälp av en angiven jämförelse. |
| GroupBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Grupperar elementen i en sekvens enligt en angiven nyckelväljare. |
| GroupJoin<TOuter,TInner,TKey,TResult>(IEnumerable<TOuter>, IEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,IEnumerable<TInner>, TResult>, IEqualityComparer<TKey>) |
Korrelerar elementen i två sekvenser baserat på nyckeljämlikhet och grupperar resultaten. En angiven IEqualityComparer<T> används för att jämföra nycklar. |
| GroupJoin<TOuter,TInner,TKey,TResult>(IEnumerable<TOuter>, IEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,IEnumerable<TInner>, TResult>) |
Korrelerar elementen i två sekvenser baserat på likhet mellan nycklar och grupperar resultatet. Standardjämförlikningsjämföraren används för att jämföra nycklar. |
| InDocumentOrder<T>(IEnumerable<T>) |
Returnerar en samling noder som innehåller alla noder i källsamlingen, sorterade i dokumentordning. |
| Intersect<TSource>(IEnumerable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>) |
Skapar den angivna skärningspunkten mellan två sekvenser med hjälp av angivna IEqualityComparer<T> för att jämföra värden. |
| Intersect<TSource>(IEnumerable<TSource>, IEnumerable<TSource>) |
Genererar den angivna skärningspunkten för två sekvenser med hjälp av standardjämlikhetsjämförlikningsjämföraren för att jämföra värden. |
| Join<TOuter,TInner,TKey,TResult>(IEnumerable<TOuter>, IEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,TInner,TResult>, IEqualityComparer<TKey>) |
Korrelerar elementen i två sekvenser baserat på matchande nycklar. En angiven IEqualityComparer<T> används för att jämföra nycklar. |
| Join<TOuter,TInner,TKey,TResult>(IEnumerable<TOuter>, IEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,TInner,TResult>) |
Korrelerar elementen i två sekvenser baserat på matchande nycklar. Standardjämförlikningsjämföraren används för att jämföra nycklar. |
| Last<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Returnerar det sista elementet i en sekvens som uppfyller ett angivet villkor. |
| Last<TSource>(IEnumerable<TSource>) |
Returnerar det sista elementet i en sekvens. |
| LastOrDefault<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Returnerar det sista elementet i en sekvens som uppfyller ett villkor eller ett standardvärde om inget sådant element hittas. |
| LastOrDefault<TSource>(IEnumerable<TSource>) |
Returnerar det sista elementet i en sekvens eller ett standardvärde om sekvensen inte innehåller några element. |
| LongCount<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Returnerar ett Int64 som representerar hur många element i en sekvens som uppfyller ett villkor. |
| LongCount<TSource>(IEnumerable<TSource>) |
Returnerar ett Int64 som representerar det totala antalet element i en sekvens. |
| Max<TSource,TResult>(IEnumerable<TSource>, Func<TSource,TResult>) |
Anropar en transformeringsfunktion på varje element i en allmän sekvens och returnerar det maximala resulterande värdet. |
| Max<TSource>(IEnumerable<TSource>, Func<TSource,Decimal>) |
Anropar en transformeringsfunktion på varje element i en sekvens och returnerar det maximala Decimal värdet. |
| Max<TSource>(IEnumerable<TSource>, Func<TSource,Double>) |
Anropar en transformeringsfunktion på varje element i en sekvens och returnerar det maximala Double värdet. |
| Max<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) |
Anropar en transformeringsfunktion på varje element i en sekvens och returnerar det maximala Int32 värdet. |
| Max<TSource>(IEnumerable<TSource>, Func<TSource,Int64>) |
Anropar en transformeringsfunktion på varje element i en sekvens och returnerar det maximala Int64 värdet. |
| Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Decimal>>) |
Anropar en transformeringsfunktion på varje element i en sekvens och returnerar det maximala null-värdet Decimal . |
| Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>) |
Anropar en transformeringsfunktion på varje element i en sekvens och returnerar det maximala null-värdet Double . |
| Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>) |
Anropar en transformeringsfunktion på varje element i en sekvens och returnerar det maximala null-värdet Int32 . |
| Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>) |
Anropar en transformeringsfunktion på varje element i en sekvens och returnerar det maximala null-värdet Int64 . |
| Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>) |
Anropar en transformeringsfunktion på varje element i en sekvens och returnerar det maximala null-värdet Single . |
| Max<TSource>(IEnumerable<TSource>, Func<TSource,Single>) |
Anropar en transformeringsfunktion på varje element i en sekvens och returnerar det maximala Single värdet. |
| Max<TSource>(IEnumerable<TSource>) |
Returnerar det maximala värdet i en allmän sekvens. |
| Min<TSource,TResult>(IEnumerable<TSource>, Func<TSource,TResult>) |
Anropar en transformeringsfunktion på varje element i en allmän sekvens och returnerar det lägsta resulterande värdet. |
| Min<TSource>(IEnumerable<TSource>, Func<TSource,Decimal>) |
Anropar en transformeringsfunktion på varje element i en sekvens och returnerar minimivärdet Decimal . |
| Min<TSource>(IEnumerable<TSource>, Func<TSource,Double>) |
Anropar en transformeringsfunktion på varje element i en sekvens och returnerar minimivärdet Double . |
| Min<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) |
Anropar en transformeringsfunktion på varje element i en sekvens och returnerar minimivärdet Int32 . |
| Min<TSource>(IEnumerable<TSource>, Func<TSource,Int64>) |
Anropar en transformeringsfunktion på varje element i en sekvens och returnerar minimivärdet Int64 . |
| Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Decimal>>) |
Anropar en transformeringsfunktion på varje element i en sekvens och returnerar det lägsta null-värdet Decimal . |
| Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>) |
Anropar en transformeringsfunktion på varje element i en sekvens och returnerar det lägsta null-värdet Double . |
| Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>) |
Anropar en transformeringsfunktion på varje element i en sekvens och returnerar det lägsta null-värdet Int32 . |
| Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>) |
Anropar en transformeringsfunktion på varje element i en sekvens och returnerar det lägsta null-värdet Int64 . |
| Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>) |
Anropar en transformeringsfunktion på varje element i en sekvens och returnerar det lägsta null-värdet Single . |
| Min<TSource>(IEnumerable<TSource>, Func<TSource,Single>) |
Anropar en transformeringsfunktion på varje element i en sekvens och returnerar minimivärdet Single . |
| Min<TSource>(IEnumerable<TSource>) |
Returnerar minimivärdet i en allmän sekvens. |
| Nodes<T>(IEnumerable<T>) |
Returnerar en samling av de underordnade noderna i varje dokument och element i källsamlingen. |
| OfType<TResult>(IEnumerable) |
Filtrerar elementen i en IEnumerable baserat på en angiven typ. |
| OrderBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IComparer<TKey>) |
Sorterar elementen i en sekvens i stigande ordning med hjälp av en angiven jämförelse. |
| OrderBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Sorterar elementen i en sekvens i stigande ordning enligt en nyckel. |
| OrderByDescending<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IComparer<TKey>) |
Sorterar elementen i en sekvens i fallande ordning med hjälp av en angiven jämförelse. |
| OrderByDescending<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Sorterar elementen i en sekvens i fallande ordning enligt en nyckel. |
| Prepend<TSource>(IEnumerable<TSource>, TSource) |
Lägger till ett värde i början av sekvensen. |
| Remove<T>(IEnumerable<T>) |
Tar bort varje nod i källsamlingen från den överordnade noden. |
| Reverse<TSource>(IEnumerable<TSource>) |
Invertera ordningen på elementen i en sekvens. |
| Select<TSource,TResult>(IEnumerable<TSource>, Func<TSource,Int32,TResult>) |
Projicerar varje element i en sekvens i ett nytt formulär genom att införliva elementets index. |
| Select<TSource,TResult>(IEnumerable<TSource>, Func<TSource,TResult>) |
Projicerar varje element i en sekvens till ett nytt formulär. |
| SelectMany<TSource,TCollection,TResult>(IEnumerable<TSource>, Func<TSource,IEnumerable<TCollection>>, Func<TSource,TCollection,TResult>) |
Projicerar varje element i en sekvens till en IEnumerable<T>, jämnar ut de resulterande sekvenserna i en sekvens och anropar en resultatväljarefunktion på varje element däri. |
| SelectMany<TSource,TCollection,TResult>(IEnumerable<TSource>, Func<TSource,Int32,IEnumerable<TCollection>>, Func<TSource,TCollection,TResult>) |
Projicerar varje element i en sekvens till en IEnumerable<T>, jämnar ut de resulterande sekvenserna i en sekvens och anropar en resultatväljarefunktion på varje element däri. Indexet för varje källelement används i den mellanliggande projekterade formen av det elementet. |
| SelectMany<TSource,TResult>(IEnumerable<TSource>, Func<TSource,IEnumerable<TResult>>) |
Projicerar varje element i en sekvens till en IEnumerable<T> och jämnar ut de resulterande sekvenserna i en sekvens. |
| SelectMany<TSource,TResult>(IEnumerable<TSource>, Func<TSource,Int32,IEnumerable<TResult>>) |
Projicerar varje element i en sekvens till en IEnumerable<T>, och jämnar ut de resulterande sekvenserna i en sekvens. Indexet för varje källelement används i den projekterade formen av det elementet. |
| SequenceEqual<TSource>(IEnumerable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>) |
Avgör om två sekvenser är lika med genom att jämföra deras element med hjälp av en angiven IEqualityComparer<T>. |
| SequenceEqual<TSource>(IEnumerable<TSource>, IEnumerable<TSource>) |
Avgör om två sekvenser är lika med genom att jämföra elementen med hjälp av standardjämlikhetsjämföraren för deras typ. |
| Single<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Returnerar det enda elementet i en sekvens som uppfyller ett angivet villkor och genererar ett undantag om mer än ett sådant element finns. |
| Single<TSource>(IEnumerable<TSource>) |
Returnerar det enda elementet i en sekvens och genererar ett undantag om det inte finns exakt ett element i sekvensen. |
| SingleOrDefault<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Returnerar det enda elementet i en sekvens som uppfyller ett angivet villkor eller ett standardvärde om det inte finns något sådant element. den här metoden utlöser ett undantag om fler än ett element uppfyller villkoret. |
| SingleOrDefault<TSource>(IEnumerable<TSource>) |
Returnerar det enda elementet i en sekvens eller ett standardvärde om sekvensen är tom. den här metoden utlöser ett undantag om det finns fler än ett element i sekvensen. |
| Skip<TSource>(IEnumerable<TSource>, Int32) |
Kringgår ett angivet antal element i en sekvens och returnerar sedan de återstående elementen. |
| SkipLast<TSource>(IEnumerable<TSource>, Int32) |
Returnerar en ny uppräkningsbar samling som innehåller elementen från |
| SkipWhile<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Kringgår element i en sekvens så länge ett angivet villkor är sant och returnerar sedan de återstående elementen. |
| SkipWhile<TSource>(IEnumerable<TSource>, Func<TSource,Int32,Boolean>) |
Kringgår element i en sekvens så länge ett angivet villkor är sant och returnerar sedan de återstående elementen. Elementets index används i logiken i predikatfunktionen. |
| Sum<TSource>(IEnumerable<TSource>, Func<TSource,Decimal>) |
Beräknar summan av sekvensen med Decimal värden som hämtas genom att anropa en transformeringsfunktion på varje element i indatasekvensen. |
| Sum<TSource>(IEnumerable<TSource>, Func<TSource,Double>) |
Beräknar summan av sekvensen med Double värden som hämtas genom att anropa en transformeringsfunktion på varje element i indatasekvensen. |
| Sum<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) |
Beräknar summan av sekvensen med Int32 värden som hämtas genom att anropa en transformeringsfunktion på varje element i indatasekvensen. |
| Sum<TSource>(IEnumerable<TSource>, Func<TSource,Int64>) |
Beräknar summan av sekvensen med Int64 värden som hämtas genom att anropa en transformeringsfunktion på varje element i indatasekvensen. |
| Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Decimal>>) |
Beräknar summan av sekvensen med null-värden Decimal som erhålls genom att anropa en transformeringsfunktion på varje element i indatasekvensen. |
| Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>) |
Beräknar summan av sekvensen med null-värden Double som erhålls genom att anropa en transformeringsfunktion på varje element i indatasekvensen. |
| Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>) |
Beräknar summan av sekvensen med null-värden Int32 som erhålls genom att anropa en transformeringsfunktion på varje element i indatasekvensen. |
| Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>) |
Beräknar summan av sekvensen med null-värden Int64 som erhålls genom att anropa en transformeringsfunktion på varje element i indatasekvensen. |
| Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>) |
Beräknar summan av sekvensen med null-värden Single som erhålls genom att anropa en transformeringsfunktion på varje element i indatasekvensen. |
| Sum<TSource>(IEnumerable<TSource>, Func<TSource,Single>) |
Beräknar summan av sekvensen med Single värden som hämtas genom att anropa en transformeringsfunktion på varje element i indatasekvensen. |
| Take<TSource>(IEnumerable<TSource>, Int32) |
Returnerar ett angivet antal sammanhängande element från början av en sekvens. |
| TakeLast<TSource>(IEnumerable<TSource>, Int32) |
Returnerar en ny uppräkningsbar samling som innehåller de sista |
| TakeWhile<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Returnerar element från en sekvens så länge ett angivet villkor är sant. |
| TakeWhile<TSource>(IEnumerable<TSource>, Func<TSource,Int32,Boolean>) |
Returnerar element från en sekvens så länge ett angivet villkor är sant. Elementets index används i logiken i predikatfunktionen. |
| ToArray<TSource>(IEnumerable<TSource>) |
Skapar en matris från en IEnumerable<T>. |
| ToDictionary<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, IEqualityComparer<TKey>) |
Skapar en Dictionary<TKey,TValue> från en IEnumerable<T> enligt en angiven nyckelväljare, en jämförelsefunktion och en elementväljare. |
| ToDictionary<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>) |
Skapar en Dictionary<TKey,TValue> från en IEnumerable<T> enligt angivna funktioner för nyckelväljare och elementväljare. |
| ToDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
Skapar en Dictionary<TKey,TValue> från en IEnumerable<T> enligt en angiven nyckelväljare och nyckeljäxare. |
| ToDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Skapar en Dictionary<TKey,TValue> från en IEnumerable<T> enligt en angiven nyckelväljare. |
| ToHashSet<TSource>(IEnumerable<TSource>, IEqualityComparer<TSource>) |
Skapar en HashSet<T> från en IEnumerable<T> med hjälp av |
| ToHashSet<TSource>(IEnumerable<TSource>) |
Skapar en HashSet<T> från en IEnumerable<T>. |
| ToImmutableArray<TSource>(IEnumerable<TSource>) |
Skapar en oföränderlig matris från den angivna samlingen. |
| ToImmutableDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>, IEqualityComparer<TKey>, IEqualityComparer<TValue>) |
Räknar upp och transformerar en sekvens och skapar en oföränderlig ordlista med dess innehåll med hjälp av de angivna nyckel- och värdejäxorna. |
| ToImmutableDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>, IEqualityComparer<TKey>) |
Räknar upp och transformerar en sekvens och skapar en oföränderlig ordlista med dess innehåll med hjälp av den angivna nyckeljäxaren. |
| ToImmutableDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>) |
Räknar upp och transformerar en sekvens och skapar en oföränderlig ordlista med dess innehåll. |
| ToImmutableDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
Konstruerar en oföränderlig ordlista baserat på en viss omvandling av en sekvens. |
| ToImmutableDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Konstruerar en oföränderlig ordlista från en befintlig samling element och tillämpar en transformeringsfunktion på källnycklarna. |
| ToImmutableHashSet<TSource>(IEnumerable<TSource>, IEqualityComparer<TSource>) |
Räknar upp en sekvens, skapar en oföränderlig hashuppsättning av innehållet och använder den angivna likhetsjämföraren för den angivna typen. |
| ToImmutableHashSet<TSource>(IEnumerable<TSource>) |
Räknar upp en sekvens och skapar en oföränderlig hashuppsättning med dess innehåll. |
| ToImmutableList<TSource>(IEnumerable<TSource>) |
Räknar upp en sekvens och skapar en oföränderlig lista över dess innehåll. |
| ToImmutableSortedDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>, IComparer<TKey>, IEqualityComparer<TValue>) |
Räknar upp och transformerar en sekvens och skapar en oföränderlig sorterad ordlista med dess innehåll med hjälp av de angivna nyckel- och värdejäxorna. |
| ToImmutableSortedDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>, IComparer<TKey>) |
Räknar upp och transformerar en sekvens och skapar en oföränderlig sorterad ordlista med dess innehåll med hjälp av den angivna nyckeljäxaren. |
| ToImmutableSortedDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>) |
Räknar upp och transformerar en sekvens och skapar en oföränderlig sorterad ordlista med dess innehåll. |
| ToImmutableSortedSet<TSource>(IEnumerable<TSource>, IComparer<TSource>) |
Räknar upp en sekvens, skapar en oföränderlig sorterad uppsättning av dess innehåll och använder den angivna jämförelsen. |
| ToImmutableSortedSet<TSource>(IEnumerable<TSource>) |
Räknar upp en sekvens och skapar en oföränderlig sorterad uppsättning av dess innehåll. |
| ToList<TSource>(IEnumerable<TSource>) |
Skapar en List<T> från en IEnumerable<T>. |
| ToLookup<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, IEqualityComparer<TKey>) |
Skapar en Lookup<TKey,TElement> från en IEnumerable<T> enligt en angiven nyckelväljare, en jämförelsefunktion och en elementväljare. |
| ToLookup<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>) |
Skapar en Lookup<TKey,TElement> från en IEnumerable<T> enligt angivna funktioner för nyckelväljare och elementväljare. |
| ToLookup<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
Skapar en Lookup<TKey,TElement> från en IEnumerable<T> enligt en angiven nyckelväljare och nyckeljäxare. |
| ToLookup<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Skapar en Lookup<TKey,TElement> från en IEnumerable<T> enligt en angiven nyckelväljare. |
| Union<TSource>(IEnumerable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>) |
Skapar uppsättningen union av två sekvenser med hjälp av en angiven IEqualityComparer<T>. |
| Union<TSource>(IEnumerable<TSource>, IEnumerable<TSource>) |
Skapar uppsättningsunionen med två sekvenser med hjälp av standardjämförlikningsjämföraren. |
| Where<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Filtrerar en sekvens med värden baserat på ett predikat. |
| Where<TSource>(IEnumerable<TSource>, Func<TSource,Int32,Boolean>) |
Filtrerar en sekvens med värden baserat på ett predikat. Varje elements index används i logiken i predikatfunktionen. |
| Zip<TFirst,TSecond,TResult>(IEnumerable<TFirst>, IEnumerable<TSecond>, Func<TFirst,TSecond,TResult>) |
Tillämpar en angiven funktion på motsvarande element i två sekvenser, vilket ger en sekvens av resultaten. |