KeyedCollection<TKey,TItem> Klas
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Biedt de abstracte basisklasse voor een verzameling waarvan de sleutels zijn ingesloten in de waarden.
generic <typename TKey, typename TItem>
public ref class KeyedCollection abstract : System::Collections::ObjectModel::Collection<TItem>
public abstract class KeyedCollection<TKey,TItem> : System.Collections.ObjectModel.Collection<TItem>
[System.Runtime.InteropServices.ComVisible(false)]
[System.Serializable]
public abstract class KeyedCollection<TKey,TItem> : System.Collections.ObjectModel.Collection<TItem>
type KeyedCollection<'Key, 'Item> = class
inherit Collection<'Item>
[<System.Runtime.InteropServices.ComVisible(false)>]
[<System.Serializable>]
type KeyedCollection<'Key, 'Item> = class
inherit Collection<'Item>
Public MustInherit Class KeyedCollection(Of TKey, TItem)
Inherits Collection(Of TItem)
Type parameters
- TKey
Het type sleutels in de verzameling.
- TItem
Het type items in de verzameling.
- Overname
- Afgeleid
- Kenmerken
Voorbeelden
Deze sectie bevat twee codevoorbeelden. In het eerste voorbeeld ziet u de minimale code die vereist is om af KeyedCollection<TKey,TItem>te leiden van en demonstreert veel van de overgenomen methoden. In het tweede voorbeeld ziet u hoe u de beveiligde methoden kunt overschrijven om KeyedCollection<TKey,TItem> aangepast gedrag te bieden.
Voorbeeld 1
In dit codevoorbeeld ziet u de minimale code die nodig is om een verzamelingsklasse af te leiden van KeyedCollection<TKey,TItem>: de GetKeyForItem methode overschrijven en een openbare constructor bieden die wordt gedelegeerd aan een basisklasseconstructor. In het codevoorbeeld ziet u ook veel van de eigenschappen en methoden die zijn overgenomen van KeyedCollection<TKey,TItem> en Collection<T> klassen.
De SimpleOrder klasse is een zeer eenvoudige opdrachtlijst die objecten bevat OrderItem , die elk een regelitem in de volgorde vertegenwoordigt. De sleutel is OrderItem onveranderbaar, een belangrijke overweging voor klassen die zijn afgeleid van KeyedCollection<TKey,TItem>. Zie voor een codevoorbeeld waarin veranderlijke sleutels ChangeItemKeyworden gebruikt.
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
// This class represents a very simple keyed list of OrderItems,
// inheriting most of its behavior from the KeyedCollection and
// Collection classes. The immediate base class is the constructed
// type KeyedCollection<int, OrderItem>. When you inherit
// from KeyedCollection, the second generic type argument is the
// type that you want to store in the collection -- in this case
// OrderItem. The first type argument is the type that you want
// to use as a key. Its values must be calculated from OrderItem;
// in this case it is the int field PartNumber, so SimpleOrder
// inherits KeyedCollection<int, OrderItem>.
//
public class SimpleOrder : KeyedCollection<int, OrderItem>
{
// This is the only method that absolutely must be overridden,
// because without it the KeyedCollection cannot extract the
// keys from the items. The input parameter type is the
// second generic type argument, in this case OrderItem, and
// the return value type is the first generic type argument,
// in this case int.
//
protected override int GetKeyForItem(OrderItem item)
{
// In this example, the key is the part number.
return item.PartNumber;
}
}
public class Demo
{
public static void Main()
{
SimpleOrder weekly = new SimpleOrder();
// The Add method, inherited from Collection, takes OrderItem.
//
weekly.Add(new OrderItem(110072674, "Widget", 400, 45.17));
weekly.Add(new OrderItem(110072675, "Sprocket", 27, 5.3));
weekly.Add(new OrderItem(101030411, "Motor", 10, 237.5));
weekly.Add(new OrderItem(110072684, "Gear", 175, 5.17));
Display(weekly);
// The Contains method of KeyedCollection takes the key,
// type, in this case int.
//
Console.WriteLine("\nContains(101030411): {0}",
weekly.Contains(101030411));
// The default Item property of KeyedCollection takes a key.
//
Console.WriteLine("\nweekly[101030411].Description: {0}",
weekly[101030411].Description);
// The Remove method of KeyedCollection takes a key.
//
Console.WriteLine("\nRemove(101030411)");
weekly.Remove(101030411);
Display(weekly);
// The Insert method, inherited from Collection, takes an
// index and an OrderItem.
//
Console.WriteLine("\nInsert(2, New OrderItem(...))");
weekly.Insert(2, new OrderItem(111033401, "Nut", 10, .5));
Display(weekly);
// The default Item property is overloaded. One overload comes
// from KeyedCollection<int, OrderItem>; that overload
// is read-only, and takes Integer because it retrieves by key.
// The other overload comes from Collection<OrderItem>, the
// base class of KeyedCollection<int, OrderItem>; it
// retrieves by index, so it also takes an Integer. The compiler
// uses the most-derived overload, from KeyedCollection, so the
// only way to access SimpleOrder by index is to cast it to
// Collection<OrderItem>. Otherwise the index is interpreted
// as a key, and KeyNotFoundException is thrown.
//
Collection<OrderItem> coweekly = weekly;
Console.WriteLine("\ncoweekly[2].Description: {0}",
coweekly[2].Description);
Console.WriteLine("\ncoweekly[2] = new OrderItem(...)");
coweekly[2] = new OrderItem(127700026, "Crank", 27, 5.98);
OrderItem temp = coweekly[2];
// The IndexOf method inherited from Collection<OrderItem>
// takes an OrderItem instead of a key
//
Console.WriteLine("\nIndexOf(temp): {0}", weekly.IndexOf(temp));
// The inherited Remove method also takes an OrderItem.
//
Console.WriteLine("\nRemove(temp)");
weekly.Remove(temp);
Display(weekly);
Console.WriteLine("\nRemoveAt(0)");
weekly.RemoveAt(0);
Display(weekly);
}
private static void Display(SimpleOrder order)
{
Console.WriteLine();
foreach( OrderItem item in order )
{
Console.WriteLine(item);
}
}
}
// This class represents a simple line item in an order. All the
// values are immutable except quantity.
//
public class OrderItem
{
public readonly int PartNumber;
public readonly string Description;
public readonly double UnitPrice;
private int _quantity = 0;
public OrderItem(int partNumber, string description,
int quantity, double unitPrice)
{
this.PartNumber = partNumber;
this.Description = description;
this.Quantity = quantity;
this.UnitPrice = unitPrice;
}
public int Quantity
{
get { return _quantity; }
set
{
if (value<0)
throw new ArgumentException("Quantity cannot be negative.");
_quantity = value;
}
}
public override string ToString()
{
return String.Format(
"{0,9} {1,6} {2,-12} at {3,8:#,###.00} = {4,10:###,###.00}",
PartNumber, _quantity, Description, UnitPrice,
UnitPrice * _quantity);
}
}
/* This code example produces the following output:
110072674 400 Widget at 45.17 = 18,068.00
110072675 27 Sprocket at 5.30 = 143.10
101030411 10 Motor at 237.50 = 2,375.00
110072684 175 Gear at 5.17 = 904.75
Contains(101030411): True
weekly[101030411].Description: Motor
Remove(101030411)
110072674 400 Widget at 45.17 = 18,068.00
110072675 27 Sprocket at 5.30 = 143.10
110072684 175 Gear at 5.17 = 904.75
Insert(2, New OrderItem(...))
110072674 400 Widget at 45.17 = 18,068.00
110072675 27 Sprocket at 5.30 = 143.10
111033401 10 Nut at .50 = 5.00
110072684 175 Gear at 5.17 = 904.75
coweekly[2].Description: Nut
coweekly[2] = new OrderItem(...)
IndexOf(temp): 2
Remove(temp)
110072674 400 Widget at 45.17 = 18,068.00
110072675 27 Sprocket at 5.30 = 143.10
110072684 175 Gear at 5.17 = 904.75
RemoveAt(0)
110072675 27 Sprocket at 5.30 = 143.10
110072684 175 Gear at 5.17 = 904.75
*/
Imports System.Collections.Generic
Imports System.Collections.ObjectModel
' This class represents a very simple keyed list of OrderItems,
' inheriting most of its behavior from the KeyedCollection and
' Collection classes. The immediate base class is the constructed
' type KeyedCollection(Of Integer, OrderItem). When you inherit
' from KeyedCollection, the second generic type argument is the
' type that you want to store in the collection -- in this case
' OrderItem. The first generic argument is the type that you want
' to use as a key. Its values must be calculated from OrderItem;
' in this case it is the Integer field PartNumber, so SimpleOrder
' inherits KeyedCollection(Of Integer, OrderItem).
'
Public Class SimpleOrder
Inherits KeyedCollection(Of Integer, OrderItem)
' This is the only method that absolutely must be overridden,
' because without it the KeyedCollection cannot extract the
' keys from the items. The input parameter type is the
' second generic type argument, in this case OrderItem, and
' the return value type is the first generic type argument,
' in this case Integer.
'
Protected Overrides Function GetKeyForItem( _
ByVal item As OrderItem) As Integer
' In this example, the key is the part number.
Return item.PartNumber
End Function
End Class
Public Class Demo
Public Shared Sub Main()
Dim weekly As New SimpleOrder()
' The Add method, inherited from Collection, takes OrderItem.
'
weekly.Add(New OrderItem(110072674, "Widget", 400, 45.17))
weekly.Add(New OrderItem(110072675, "Sprocket", 27, 5.3))
weekly.Add(New OrderItem(101030411, "Motor", 10, 237.5))
weekly.Add(New OrderItem(110072684, "Gear", 175, 5.17))
Display(weekly)
' The Contains method of KeyedCollection takes TKey.
'
Console.WriteLine(vbLf & "Contains(101030411): {0}", _
weekly.Contains(101030411))
' The default Item property of KeyedCollection takes the key
' type, Integer.
'
Console.WriteLine(vbLf & "weekly(101030411).Description: {0}", _
weekly(101030411).Description)
' The Remove method of KeyedCollection takes a key.
'
Console.WriteLine(vbLf & "Remove(101030411)")
weekly.Remove(101030411)
Display(weekly)
' The Insert method, inherited from Collection, takes an
' index and an OrderItem.
'
Console.WriteLine(vbLf & "Insert(2, New OrderItem(...))")
weekly.Insert(2, New OrderItem(111033401, "Nut", 10, .5))
Display(weekly)
' The default Item property is overloaded. One overload comes
' from KeyedCollection(Of Integer, OrderItem); that overload
' is read-only, and takes Integer because it retrieves by key.
' The other overload comes from Collection(Of OrderItem), the
' base class of KeyedCollection(Of Integer, OrderItem); it
' retrieves by index, so it also takes an Integer. The compiler
' uses the most-derived overload, from KeyedCollection, so the
' only way to access SimpleOrder by index is to cast it to
' Collection(Of OrderItem). Otherwise the index is interpreted
' as a key, and KeyNotFoundException is thrown.
'
Dim coweekly As Collection(Of OrderItem) = weekly
Console.WriteLine(vbLf & "coweekly(2).Description: {0}", _
coweekly(2).Description)
Console.WriteLine(vbLf & "coweekly(2) = New OrderItem(...)")
coweekly(2) = New OrderItem(127700026, "Crank", 27, 5.98)
Dim temp As OrderItem = coweekly(2)
' The IndexOf method, inherited from Collection(Of OrderItem),
' takes an OrderItem instead of a key.
'
Console.WriteLine(vbLf & "IndexOf(temp): {0}", _
weekly.IndexOf(temp))
' The inherited Remove method also takes an OrderItem.
'
Console.WriteLine(vbLf & "Remove(temp)")
weekly.Remove(temp)
Display(weekly)
Console.WriteLine(vbLf & "RemoveAt(0)")
weekly.RemoveAt(0)
Display(weekly)
End Sub
Private Shared Sub Display(ByVal order As SimpleOrder)
Console.WriteLine()
For Each item As OrderItem In order
Console.WriteLine(item)
Next item
End Sub
End Class
' This class represents a simple line item in an order. All the
' values are immutable except quantity.
'
Public Class OrderItem
Public ReadOnly PartNumber As Integer
Public ReadOnly Description As String
Public ReadOnly UnitPrice As Double
Private _quantity As Integer = 0
Public Sub New(ByVal partNumber As Integer, _
ByVal description As String, _
ByVal quantity As Integer, _
ByVal unitPrice As Double)
Me.PartNumber = partNumber
Me.Description = description
Me.Quantity = quantity
Me.UnitPrice = unitPrice
End Sub
Public Property Quantity() As Integer
Get
Return _quantity
End Get
Set
If value < 0 Then
Throw New ArgumentException("Quantity cannot be negative.")
End If
_quantity = value
End Set
End Property
Public Overrides Function ToString() As String
Return String.Format( _
"{0,9} {1,6} {2,-12} at {3,8:#,###.00} = {4,10:###,###.00}", _
PartNumber, _quantity, Description, UnitPrice, _
UnitPrice * _quantity)
End Function
End Class
' This code example produces the following output:
'
'110072674 400 Widget at 45.17 = 18,068.00
'110072675 27 Sprocket at 5.30 = 143.10
'101030411 10 Motor at 237.50 = 2,375.00
'110072684 175 Gear at 5.17 = 904.75
'
'Contains(101030411): True
'
'weekly(101030411).Description: Motor
'
'Remove(101030411)
'
'110072674 400 Widget at 45.17 = 18,068.00
'110072675 27 Sprocket at 5.30 = 143.10
'110072684 175 Gear at 5.17 = 904.75
'
'Insert(2, New OrderItem(...))
'
'110072674 400 Widget at 45.17 = 18,068.00
'110072675 27 Sprocket at 5.30 = 143.10
'111033401 10 Nut at .50 = 5.00
'110072684 175 Gear at 5.17 = 904.75
'
'coweekly(2).Description: Nut
'
'coweekly(2) = New OrderItem(...)
'
'IndexOf(temp): 2
'
'Remove(temp)
'
'110072674 400 Widget at 45.17 = 18,068.00
'110072675 27 Sprocket at 5.30 = 143.10
'110072684 175 Gear at 5.17 = 904.75
'
'RemoveAt(0)
'
'110072675 27 Sprocket at 5.30 = 143.10
'110072684 175 Gear at 5.17 = 904.75
Voorbeeld 2
In het volgende codevoorbeeld ziet u hoe u de beveiligdeInsertItem, RemoveItem, en ClearItemsSetItem methoden kunt overschrijven om aangepast gedrag te bieden voor de Add, Removeen methoden, Clear en voor het instellen van de standaardeigenschap Item[] (de indexeerfunctie in C#). Het aangepaste gedrag in dit voorbeeld is een meldingsgebeurtenis met de naam Changed, die wordt gegenereerd aan het einde van elke overschreven methode.
In het codevoorbeeld wordt de SimpleOrder klasse gemaakt, die is afgeleid van KeyedCollection<TKey,TItem> en een eenvoudig bestelformulier vertegenwoordigt. Het orderformulier bevat OrderItem objecten die de bestelde items vertegenwoordigen. In het codevoorbeeld wordt ook een SimpleOrderChangedEventArgs klasse gemaakt die de gebeurtenisgegevens bevat en een opsomming om het type wijziging te identificeren.
In het codevoorbeeld ziet u het aangepaste gedrag door de eigenschappen en methoden van de afgeleide klasse aan te roepen in de Main methode van de Demo klasse.
In dit codevoorbeeld worden objecten met onveranderbare sleutels gebruikt. Zie voor een codevoorbeeld waarin veranderlijke sleutels ChangeItemKeyworden gebruikt.
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
// This class derives from KeyedCollection and shows how to override
// the protected ClearItems, InsertItem, RemoveItem, and SetItem
// methods in order to change the behavior of the default Item
// property and the Add, Clear, Insert, and Remove methods. The
// class implements a Changed event, which is raised by all the
// protected methods.
//
// SimpleOrder is a collection of OrderItem objects, and its key
// is the PartNumber field of OrderItem. PartNumber is an Integer,
// so SimpleOrder inherits KeyedCollection<int, OrderItem>.
// (Note that the key of OrderItem cannot be changed; if it could
// be changed, SimpleOrder would have to override ChangeItemKey.)
//
public class SimpleOrder : KeyedCollection<int, OrderItem>
{
public event EventHandler<SimpleOrderChangedEventArgs> Changed;
// This parameterless constructor calls the base class constructor
// that specifies a dictionary threshold of 0, so that the internal
// dictionary is created as soon as an item is added to the
// collection.
//
public SimpleOrder() : base(null, 0) {}
// This is the only method that absolutely must be overridden,
// because without it the KeyedCollection cannot extract the
// keys from the items.
//
protected override int GetKeyForItem(OrderItem item)
{
// In this example, the key is the part number.
return item.PartNumber;
}
protected override void InsertItem(int index, OrderItem newItem)
{
base.InsertItem(index, newItem);
EventHandler<SimpleOrderChangedEventArgs> temp = Changed;
if (temp != null)
{
temp(this, new SimpleOrderChangedEventArgs(
ChangeType.Added, newItem, null));
}
}
protected override void SetItem(int index, OrderItem newItem)
{
OrderItem replaced = Items[index];
base.SetItem(index, newItem);
EventHandler<SimpleOrderChangedEventArgs> temp = Changed;
if (temp != null)
{
temp(this, new SimpleOrderChangedEventArgs(
ChangeType.Replaced, replaced, newItem));
}
}
protected override void RemoveItem(int index)
{
OrderItem removedItem = Items[index];
base.RemoveItem(index);
EventHandler<SimpleOrderChangedEventArgs> temp = Changed;
if (temp != null)
{
temp(this, new SimpleOrderChangedEventArgs(
ChangeType.Removed, removedItem, null));
}
}
protected override void ClearItems()
{
base.ClearItems();
EventHandler<SimpleOrderChangedEventArgs> temp = Changed;
if (temp != null)
{
temp(this, new SimpleOrderChangedEventArgs(
ChangeType.Cleared, null, null));
}
}
}
// Event argument for the Changed event.
//
public class SimpleOrderChangedEventArgs : EventArgs
{
private OrderItem _changedItem;
private ChangeType _changeType;
private OrderItem _replacedWith;
public OrderItem ChangedItem { get { return _changedItem; }}
public ChangeType ChangeType { get { return _changeType; }}
public OrderItem ReplacedWith { get { return _replacedWith; }}
public SimpleOrderChangedEventArgs(ChangeType change,
OrderItem item, OrderItem replacement)
{
_changeType = change;
_changedItem = item;
_replacedWith = replacement;
}
}
public enum ChangeType
{
Added,
Removed,
Replaced,
Cleared
};
public class Demo
{
public static void Main()
{
SimpleOrder weekly = new SimpleOrder();
weekly.Changed += new
EventHandler<SimpleOrderChangedEventArgs>(ChangedHandler);
// The Add method, inherited from Collection, takes OrderItem.
//
weekly.Add(new OrderItem(110072674, "Widget", 400, 45.17));
weekly.Add(new OrderItem(110072675, "Sprocket", 27, 5.3));
weekly.Add(new OrderItem(101030411, "Motor", 10, 237.5));
weekly.Add(new OrderItem(110072684, "Gear", 175, 5.17));
Display(weekly);
// The Contains method of KeyedCollection takes TKey.
//
Console.WriteLine("\nContains(101030411): {0}",
weekly.Contains(101030411));
// The default Item property of KeyedCollection takes the key
// type, Integer. The property is read-only.
//
Console.WriteLine("\nweekly[101030411].Description: {0}",
weekly[101030411].Description);
// The Remove method of KeyedCollection takes a key.
//
Console.WriteLine("\nRemove(101030411)");
weekly.Remove(101030411);
// The Insert method, inherited from Collection, takes an
// index and an OrderItem.
//
Console.WriteLine("\nInsert(2, new OrderItem(...))");
weekly.Insert(2, new OrderItem(111033401, "Nut", 10, .5));
// The default Item property is overloaded. One overload comes
// from KeyedCollection<int, OrderItem>; that overload
// is read-only, and takes Integer because it retrieves by key.
// The other overload comes from Collection<OrderItem>, the
// base class of KeyedCollection<int, OrderItem>; it
// retrieves by index, so it also takes an Integer. The compiler
// uses the most-derived overload, from KeyedCollection, so the
// only way to access SimpleOrder by index is to cast it to
// Collection<OrderItem>. Otherwise the index is interpreted
// as a key, and KeyNotFoundException is thrown.
//
Collection<OrderItem> coweekly = weekly;
Console.WriteLine("\ncoweekly[2].Description: {0}",
coweekly[2].Description);
Console.WriteLine("\ncoweekly[2] = new OrderItem(...)");
coweekly[2] = new OrderItem(127700026, "Crank", 27, 5.98);
OrderItem temp = coweekly[2];
// The IndexOf method, inherited from Collection<OrderItem>,
// takes an OrderItem instead of a key.
//
Console.WriteLine("\nIndexOf(temp): {0}", weekly.IndexOf(temp));
// The inherited Remove method also takes an OrderItem.
//
Console.WriteLine("\nRemove(temp)");
weekly.Remove(temp);
Console.WriteLine("\nRemoveAt(0)");
weekly.RemoveAt(0);
// Increase the quantity for a line item.
Console.WriteLine("\ncoweekly(1) = New OrderItem(...)");
coweekly[1] = new OrderItem(coweekly[1].PartNumber,
coweekly[1].Description, coweekly[1].Quantity + 1000,
coweekly[1].UnitPrice);
Display(weekly);
Console.WriteLine();
weekly.Clear();
}
private static void Display(SimpleOrder order)
{
Console.WriteLine();
foreach( OrderItem item in order )
{
Console.WriteLine(item);
}
}
private static void ChangedHandler(object source,
SimpleOrderChangedEventArgs e)
{
OrderItem item = e.ChangedItem;
if (e.ChangeType==ChangeType.Replaced)
{
OrderItem replacement = e.ReplacedWith;
Console.WriteLine("{0} (quantity {1}) was replaced " +
"by {2}, (quantity {3}).", item.Description,
item.Quantity, replacement.Description,
replacement.Quantity);
}
else if(e.ChangeType == ChangeType.Cleared)
{
Console.WriteLine("The order list was cleared.");
}
else
{
Console.WriteLine("{0} (quantity {1}) was {2}.",
item.Description, item.Quantity, e.ChangeType);
}
}
}
// This class represents a simple line item in an order. All the
// values are immutable except quantity.
//
public class OrderItem
{
private int _partNumber;
private string _description;
private double _unitPrice;
private int _quantity;
public int PartNumber { get { return _partNumber; }}
public string Description { get { return _description; }}
public double UnitPrice { get { return _unitPrice; }}
public int Quantity { get { return _quantity; }}
public OrderItem(int partNumber, string description, int quantity,
double unitPrice)
{
_partNumber = partNumber;
_description = description;
_quantity = quantity;
_unitPrice = unitPrice;
}
public override string ToString()
{
return String.Format(
"{0,9} {1,6} {2,-12} at {3,8:#,###.00} = {4,10:###,###.00}",
PartNumber, _quantity, Description, UnitPrice,
UnitPrice * _quantity);
}
}
/* This code example produces the following output:
Widget (quantity 400) was Added.
Sprocket (quantity 27) was Added.
Motor (quantity 10) was Added.
Gear (quantity 175) was Added.
110072674 400 Widget at 45.17 = 18,068.00
110072675 27 Sprocket at 5.30 = 143.10
101030411 10 Motor at 237.50 = 2,375.00
110072684 175 Gear at 5.17 = 904.75
Contains(101030411): True
weekly[101030411].Description: Motor
Remove(101030411)
Motor (quantity 10) was Removed.
Insert(2, new OrderItem(...))
Nut (quantity 10) was Added.
coweekly[2].Description: Nut
coweekly[2] = new OrderItem(...)
Nut (quantity 10) was replaced by Crank, (quantity 27).
IndexOf(temp): 2
Remove(temp)
Crank (quantity 27) was Removed.
RemoveAt(0)
Widget (quantity 400) was Removed.
coweekly(1) = New OrderItem(...)
Gear (quantity 175) was replaced by Gear, (quantity 1175).
110072675 27 Sprocket at 5.30 = 143.10
110072684 1175 Gear at 5.17 = 6,074.75
The order list was cleared.
*/
Imports System.Collections.Generic
Imports System.Collections.ObjectModel
' This class derives from KeyedCollection and shows how to override
' the protected ClearItems, InsertItem, RemoveItem, and SetItem
' methods in order to change the behavior of the default Item
' property and the Add, Clear, Insert, and Remove methods. The
' class implements a Changed event, which is raised by all the
' protected methods.
'
' SimpleOrder is a collection of OrderItem objects, and its key
' is the PartNumber field of OrderItem. PartNumber is an Integer,
' so SimpleOrder inherits KeyedCollection(Of Integer, OrderItem).
' (Note that the key of OrderItem cannot be changed; if it could
' be changed, SimpleOrder would have to override ChangeItemKey.)
'
Public Class SimpleOrder
Inherits KeyedCollection(Of Integer, OrderItem)
Public Event Changed As EventHandler(Of SimpleOrderChangedEventArgs)
' This parameterless constructor calls the base class constructor
' that specifies a dictionary threshold of 0, so that the internal
' dictionary is created as soon as an item is added to the
' collection.
'
Public Sub New()
MyBase.New(Nothing, 0)
End Sub
' This is the only method that absolutely must be overridden,
' because without it the KeyedCollection cannot extract the
' keys from the items.
'
Protected Overrides Function GetKeyForItem( _
ByVal item As OrderItem) As Integer
' In this example, the key is the part number.
Return item.PartNumber
End Function
Protected Overrides Sub InsertItem( _
ByVal index As Integer, ByVal newItem As OrderItem)
MyBase.InsertItem(index, newItem)
RaiseEvent Changed(Me, New SimpleOrderChangedEventArgs( _
ChangeType.Added, newItem, Nothing))
End Sub
Protected Overrides Sub SetItem(ByVal index As Integer, _
ByVal newItem As OrderItem)
Dim replaced As OrderItem = Items(index)
MyBase.SetItem(index, newItem)
RaiseEvent Changed(Me, New SimpleOrderChangedEventArgs( _
ChangeType.Replaced, replaced, newItem))
End Sub
Protected Overrides Sub RemoveItem(ByVal index As Integer)
Dim removedItem As OrderItem = Items(index)
MyBase.RemoveItem(index)
RaiseEvent Changed(Me, New SimpleOrderChangedEventArgs( _
ChangeType.Removed, removedItem, Nothing))
End Sub
Protected Overrides Sub ClearItems()
MyBase.ClearItems()
RaiseEvent Changed(Me, New SimpleOrderChangedEventArgs( _
ChangeType.Cleared, Nothing, Nothing))
End Sub
End Class
' Event argument for the Changed event.
'
Public Class SimpleOrderChangedEventArgs
Inherits EventArgs
Private _changedItem As OrderItem
Private _changeType As ChangeType
Private _replacedWith As OrderItem
Public ReadOnly Property ChangedItem As OrderItem
Get
Return _changedItem
End Get
End Property
Public ReadOnly Property ChangeType As ChangeType
Get
Return _changeType
End Get
End Property
Public ReadOnly Property ReplacedWith As OrderItem
Get
Return _replacedWith
End Get
End Property
Public Sub New(ByVal change As ChangeType, ByVal item As OrderItem, _
ByVal replacement As OrderItem)
_changeType = change
_changedItem = item
_replacedWith = replacement
End Sub
End Class
Public Enum ChangeType
Added
Removed
Replaced
Cleared
End Enum
Public Class Demo
Public Shared Sub Main()
Dim weekly As New SimpleOrder()
AddHandler weekly.Changed, AddressOf ChangedHandler
' The Add method, inherited from Collection, takes OrderItem.
'
weekly.Add(New OrderItem(110072674, "Widget", 400, 45.17))
weekly.Add(New OrderItem(110072675, "Sprocket", 27, 5.3))
weekly.Add(New OrderItem(101030411, "Motor", 10, 237.5))
weekly.Add(New OrderItem(110072684, "Gear", 175, 5.17))
Display(weekly)
' The Contains method of KeyedCollection takes TKey.
'
Console.WriteLine(vbLf & "Contains(101030411): {0}", _
weekly.Contains(101030411))
' The default Item property of KeyedCollection takes the key
' type, Integer. The property is read-only.
'
Console.WriteLine(vbLf & "weekly(101030411).Description: {0}", _
weekly(101030411).Description)
' The Remove method of KeyedCollection takes a key.
'
Console.WriteLine(vbLf & "Remove(101030411)")
weekly.Remove(101030411)
' The Insert method, inherited from Collection, takes an
' index and an OrderItem.
'
Console.WriteLine(vbLf & "Insert(2, New OrderItem(...))")
weekly.Insert(2, New OrderItem(111033401, "Nut", 10, .5))
' The default Item property is overloaded. One overload comes
' from KeyedCollection(Of Integer, OrderItem); that overload
' is read-only, and takes Integer because it retrieves by key.
' The other overload comes from Collection(Of OrderItem), the
' base class of KeyedCollection(Of Integer, OrderItem); it
' retrieves by index, so it also takes an Integer. The compiler
' uses the most-derived overload, from KeyedCollection, so the
' only way to access SimpleOrder by index is to cast it to
' Collection(Of OrderItem). Otherwise the index is interpreted
' as a key, and KeyNotFoundException is thrown.
'
Dim coweekly As Collection(Of OrderItem) = weekly
Console.WriteLine(vbLf & "coweekly(2).Description: {0}", _
coweekly(2).Description)
Console.WriteLine(vbLf & "coweekly(2) = New OrderItem(...)")
coweekly(2) = New OrderItem(127700026, "Crank", 27, 5.98)
Dim temp As OrderItem = coweekly(2)
' The IndexOf method, inherited from Collection(Of OrderItem),
' takes an OrderItem instead of a key.
'
Console.WriteLine(vbLf & "IndexOf(temp): {0}", _
weekly.IndexOf(temp))
' The inherited Remove method also takes an OrderItem.
'
Console.WriteLine(vbLf & "Remove(temp)")
weekly.Remove(temp)
Console.WriteLine(vbLf & "RemoveAt(0)")
weekly.RemoveAt(0)
' Increase the quantity for a line item.
Console.WriteLine(vbLf & "coweekly(1) = New OrderItem(...)")
coweekly(1) = New OrderItem(coweekly(1).PartNumber, _
coweekly(1).Description, coweekly(1).Quantity + 1000, _
coweekly(1).UnitPrice)
Display(weekly)
Console.WriteLine()
weekly.Clear()
End Sub
Private Shared Sub Display(ByVal order As SimpleOrder)
Console.WriteLine()
For Each item As OrderItem In order
Console.WriteLine(item)
Next item
End Sub
Private Shared Sub ChangedHandler(ByVal source As Object, _
ByVal e As SimpleOrderChangedEventArgs)
Dim item As OrderItem = e.ChangedItem
If e.ChangeType = ChangeType.Replaced Then
Dim replacement As OrderItem = e.ReplacedWith
Console.WriteLine("{0} (quantity {1}) was replaced " & _
"by {2}, (quantity {3}).", item.Description, _
item.Quantity, replacement.Description, replacement.Quantity)
ElseIf e.ChangeType = ChangeType.Cleared Then
Console.WriteLine("The order list was cleared.")
Else
Console.WriteLine("{0} (quantity {1}) was {2}.", _
item.Description, item.Quantity, e.ChangeType)
End If
End Sub
End Class
' This class represents a simple line item in an order. All the
' values are immutable except quantity.
'
Public Class OrderItem
Private _partNumber As Integer
Private _description As String
Private _unitPrice As Double
Private _quantity As Integer
Public ReadOnly Property PartNumber As Integer
Get
Return _partNumber
End Get
End Property
Public ReadOnly Property Description As String
Get
Return _description
End Get
End Property
Public ReadOnly Property UnitPrice As Double
Get
Return _unitPrice
End Get
End Property
Public ReadOnly Property Quantity() As Integer
Get
Return _quantity
End Get
End Property
Public Sub New(ByVal partNumber As Integer, _
ByVal description As String, _
ByVal quantity As Integer, _
ByVal unitPrice As Double)
_partNumber = partNumber
_description = description
_quantity = quantity
_unitPrice = unitPrice
End Sub
Public Overrides Function ToString() As String
Return String.Format( _
"{0,9} {1,6} {2,-12} at {3,8:#,###.00} = {4,10:###,###.00}", _
PartNumber, _quantity, Description, UnitPrice, _
UnitPrice * _quantity)
End Function
End Class
' This code example produces the following output:
'
'Widget (quantity 400) was Added.
'Sprocket (quantity 27) was Added.
'Motor (quantity 10) was Added.
'Gear (quantity 175) was Added.
'
'110072674 400 Widget at 45.17 = 18,068.00
'110072675 27 Sprocket at 5.30 = 143.10
'101030411 10 Motor at 237.50 = 2,375.00
'110072684 175 Gear at 5.17 = 904.75
'
'Contains(101030411): True
'
'weekly(101030411).Description: Motor
'
'Remove(101030411)
'Motor (quantity 10) was Removed.
'
'Insert(2, New OrderItem(...))
'Nut (quantity 10) was Added.
'
'coweekly(2).Description: Nut
'
'coweekly(2) = New OrderItem(...)
'Nut (quantity 10) was replaced by Crank, (quantity 27).
'
'IndexOf(temp): 2
'
'Remove(temp)
'Crank (quantity 27) was Removed.
'
'RemoveAt(0)
'Widget (quantity 400) was Removed.
'
'coweekly(1) = New OrderItem(...)
'Gear (quantity 175) was replaced by Gear, (quantity 1175).
'
'110072675 27 Sprocket at 5.30 = 143.10
'110072684 1175 Gear at 5.17 = 6,074.75
'
'The order list was cleared.
Opmerkingen
De KeyedCollection<TKey,TItem> klasse biedt zowel geïndexeerde O(1) geïndexeerde ophaalbewerking als sleutel ophalen die O(1) nadert. Het is een abstract type of nauwkeuriger een oneindige set abstracte typen, omdat elk van de samengestelde algemene typen een abstracte basisklasse is. Als u wilt gebruiken KeyedCollection<TKey,TItem>, moet u het verzamelingstype afleiden van het juiste samengestelde type.
De KeyedCollection<TKey,TItem> klasse is een hybride verbinding tussen een verzameling op basis van de IList<T> algemene interface en een verzameling op basis van de IDictionary<TKey,TValue> algemene interface. Net als verzamelingen op basis van de IList<T> algemene interface, KeyedCollection<TKey,TItem> is een geïndexeerde lijst met items. Net als verzamelingen op basis van de IDictionary<TKey,TValue> algemene interface, KeyedCollection<TKey,TItem> is er een sleutel gekoppeld aan elk element.
In tegenstelling tot woordenlijsten is een element KeyedCollection<TKey,TItem> geen sleutel-waardepaar. In plaats daarvan is het hele element de waarde en wordt de sleutel ingesloten in de waarde. Een element van een verzameling die is afgeleid van KeyedCollection\<String,String> (KeyedCollection(Of String, String) in Visual Basic) kan bijvoorbeeld 'John Doe Jr' zijn, waarbij de waarde 'John Doe Jr' is en de sleutel 'Doe' is; of een verzameling werknemersrecords met gehele getallen kan worden afgeleid van KeyedCollection\<int,Employee>. Met de abstracte GetKeyForItem methode wordt de sleutel uit het element geëxtraheerd.
Standaard bevat het KeyedCollection<TKey,TItem> een opzoekwoordenlijst die u met de Dictionary eigenschap kunt verkrijgen. Wanneer een item wordt toegevoegd aan het KeyedCollection<TKey,TItem>item, wordt de sleutel van het item eenmaal geëxtraheerd en opgeslagen in de opzoekwoordenlijst voor snellere zoekopdrachten. Dit gedrag wordt overschreven door een drempelwaarde voor het maken van een woordenlijst op te geven wanneer u de KeyedCollection<TKey,TItem>waarde maakt. De opzoekwoordenlijst wordt gemaakt wanneer het aantal elementen voor het eerst deze drempelwaarde overschrijdt. Als u -1 opgeeft als drempelwaarde, wordt de opzoekwoordenlijst nooit gemaakt.
Note
Wanneer de interne opzoekwoordenlijst wordt gebruikt, bevat deze verwijzingen naar alle items in de verzameling als TItem dit een verwijzingstype is of kopieën van alle items in de verzameling als TItem het een waardetype is. Het gebruik van de opzoekwoordenlijst is dus mogelijk niet geschikt als TItem het een waardetype is.
U kunt een item openen met behulp van de index of sleutel met behulp van de Item[] eigenschap. U kunt items zonder sleutel toevoegen, maar deze items kunnen vervolgens alleen worden geopend via index.
Constructors
| Name | Description |
|---|---|
| KeyedCollection<TKey,TItem>() |
Initialiseert een nieuw exemplaar van de KeyedCollection<TKey,TItem> klasse die gebruikmaakt van de standaard gelijkheidsgelijker. |
| KeyedCollection<TKey,TItem>(IEqualityComparer<TKey>, Int32) |
Initialiseert een nieuw exemplaar van de KeyedCollection<TKey,TItem> klasse die gebruikmaakt van de opgegeven gelijkheids-vergelijking en maakt een opzoekwoordenlijst wanneer de opgegeven drempelwaarde wordt overschreden. |
| KeyedCollection<TKey,TItem>(IEqualityComparer<TKey>) |
Initialiseert een nieuw exemplaar van de KeyedCollection<TKey,TItem> klasse die gebruikmaakt van de opgegeven gelijkheidsgelijker. |
Eigenschappen
| Name | Description |
|---|---|
| Comparer |
Hiermee haalt u de algemene gelijkheidsgelijker op die wordt gebruikt om gelijkheid van sleutels in de verzameling te bepalen. |
| Count |
Hiermee haalt u het aantal elementen op dat daadwerkelijk is opgenomen in de Collection<T>. (Overgenomen van Collection<T>) |
| Dictionary |
Hiermee haalt u de opzoekwoordenlijst van de KeyedCollection<TKey,TItem>. |
| Item[Int32] |
Hiermee haalt u het element op de opgegeven index op of stelt u het in. (Overgenomen van Collection<T>) |
| Item[TKey] |
Hiermee haalt u het element op met de opgegeven sleutel. |
| Items |
Haalt een IList<T> wrapper rond de Collection<T>. (Overgenomen van Collection<T>) |
Methoden
| Name | Description |
|---|---|
| Add(T) |
Hiermee voegt u een object toe aan het einde van de Collection<T>. (Overgenomen van Collection<T>) |
| ChangeItemKey(TItem, TKey) |
Hiermee wijzigt u de sleutel die is gekoppeld aan het opgegeven element in de opzoekwoordenlijst. |
| Clear() |
Hiermee verwijdert u alle elementen uit de Collection<T>. (Overgenomen van Collection<T>) |
| ClearItems() |
Hiermee verwijdert u alle elementen uit de KeyedCollection<TKey,TItem>. |
| Contains(TKey) |
Bepaalt of de verzameling een element met de opgegeven sleutel bevat. |
| CopyTo(T[], Int32) |
Kopieert het hele Collection<T> naar een compatibele eendimensionale Arraywaarde, beginnend bij de opgegeven index van de doelmatrix. (Overgenomen van Collection<T>) |
| Equals(Object) |
Bepaalt of het opgegeven object gelijk is aan het huidige object. (Overgenomen van Object) |
| GetEnumerator() |
Retourneert een enumerator die door de Collection<T>. (Overgenomen van Collection<T>) |
| GetHashCode() |
Fungeert als de standaardhashfunctie. (Overgenomen van Object) |
| GetKeyForItem(TItem) |
Wanneer deze wordt geïmplementeerd in een afgeleide klasse, extraheert u de sleutel uit het opgegeven element. |
| GetType() |
Hiermee haalt u de Type huidige instantie op. (Overgenomen van Object) |
| IndexOf(T) |
Zoekt naar het opgegeven object en retourneert de op nul gebaseerde index van het eerste exemplaar in het hele Collection<T>object. (Overgenomen van Collection<T>) |
| Insert(Int32, T) |
Hiermee voegt u een element in de Collection<T> opgegeven index in. (Overgenomen van Collection<T>) |
| InsertItem(Int32, T) |
Hiermee voegt u een element in de Collection<T> opgegeven index in. (Overgenomen van Collection<T>) |
| InsertItem(Int32, TItem) |
Hiermee voegt u een element in de KeyedCollection<TKey,TItem> opgegeven index in. |
| MemberwiseClone() |
Hiermee maakt u een ondiepe kopie van de huidige Object. (Overgenomen van Object) |
| Remove(TKey) |
Hiermee verwijdert u het element met de opgegeven sleutel uit de KeyedCollection<TKey,TItem>. |
| RemoveAt(Int32) |
Hiermee verwijdert u het element op de opgegeven index van de Collection<T>. (Overgenomen van Collection<T>) |
| RemoveItem(Int32) |
Hiermee verwijdert u het element op de opgegeven index van de KeyedCollection<TKey,TItem>. |
| SetItem(Int32, T) |
Vervangt het element in de opgegeven index. (Overgenomen van Collection<T>) |
| SetItem(Int32, TItem) |
Vervangt het item in de opgegeven index door het opgegeven item. |
| ToString() |
Retourneert een tekenreeks die het huidige object vertegenwoordigt. (Overgenomen van Object) |
| TryGetValue(TKey, TItem) |
Probeert een item op te halen uit de verzameling met behulp van de opgegeven sleutel. |
Expliciete interface-implementaties
| Name | Description |
|---|---|
| ICollection.CopyTo(Array, Int32) |
Kopieert de elementen van de ICollection elementen naar een Array, beginnend bij een bepaalde Array index. (Overgenomen van Collection<T>) |
| ICollection.IsSynchronized |
Hiermee wordt een waarde opgehaald die aangeeft of de toegang tot de ICollection synchronisatie is gesynchroniseerd (thread safe). (Overgenomen van Collection<T>) |
| ICollection.SyncRoot |
Hiermee haalt u een object op dat kan worden gebruikt om de toegang tot het ICollectionobject te synchroniseren. (Overgenomen van Collection<T>) |
| ICollection<T>.IsReadOnly |
Hiermee wordt een waarde opgehaald die aangeeft of het ICollection<T> kenmerk Alleen-lezen is. (Overgenomen van Collection<T>) |
| IEnumerable.GetEnumerator() |
Retourneert een enumerator die door een verzameling wordt herhaald. (Overgenomen van Collection<T>) |
| IList.Add(Object) |
Voegt een item toe aan de IList. (Overgenomen van Collection<T>) |
| IList.Contains(Object) |
Bepaalt of de IList waarde een specifieke waarde bevat. (Overgenomen van Collection<T>) |
| IList.IndexOf(Object) |
Bepaalt de index van een specifiek item in de IList. (Overgenomen van Collection<T>) |
| IList.Insert(Int32, Object) |
Hiermee voegt u een item in de IList opgegeven index in. (Overgenomen van Collection<T>) |
| IList.IsFixedSize |
Hiermee wordt een waarde opgehaald die aangeeft of de grootte van een IList vaste grootte is. (Overgenomen van Collection<T>) |
| IList.IsReadOnly |
Hiermee wordt een waarde opgehaald die aangeeft of het IList kenmerk Alleen-lezen is. (Overgenomen van Collection<T>) |
| IList.Item[Int32] |
Hiermee haalt u het element op de opgegeven index op of stelt u het in. (Overgenomen van Collection<T>) |
| IList.Remove(Object) |
Hiermee verwijdert u het eerste exemplaar van een specifiek object uit de IList. (Overgenomen van Collection<T>) |
Extensiemethoden
| Name | Description |
|---|---|
| Aggregate<TSource,TAccumulate,TResult>(IEnumerable<TSource>, TAccumulate, Func<TAccumulate,TSource,TAccumulate>, Func<TAccumulate,TResult>) |
Hiermee past u een accumulatorfunctie toe op een reeks. De opgegeven seed-waarde wordt gebruikt als de initiële accumulatorwaarde en de opgegeven functie wordt gebruikt om de resultaatwaarde te selecteren. |
| Aggregate<TSource,TAccumulate>(IEnumerable<TSource>, TAccumulate, Func<TAccumulate,TSource,TAccumulate>) |
Hiermee past u een accumulatorfunctie toe op een reeks. De opgegeven seed-waarde wordt gebruikt als de initiële accumulatorwaarde. |
| Aggregate<TSource>(IEnumerable<TSource>, Func<TSource,TSource,TSource>) |
Hiermee past u een accumulatorfunctie toe op een reeks. |
| All<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Bepaalt of alle elementen van een reeks aan een voorwaarde voldoen. |
| Ancestors<T>(IEnumerable<T>, XName) |
Retourneert een gefilterde verzameling elementen die de bovenliggende elementen van elk knooppunt in de bronverzameling bevat. Alleen elementen die een overeenkomst XName hebben, worden opgenomen in de verzameling. |
| Ancestors<T>(IEnumerable<T>) |
Retourneert een verzameling elementen die de bovenliggende elementen van elk knooppunt in de bronverzameling bevat. |
| Any<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Bepaalt of een element van een reeks voldoet aan een voorwaarde. |
| Any<TSource>(IEnumerable<TSource>) |
Bepaalt of een reeks elementen bevat. |
| Append<TSource>(IEnumerable<TSource>, TSource) |
Voegt een waarde toe aan het einde van de reeks. |
| AsEnumerable<TSource>(IEnumerable<TSource>) |
Retourneert de invoer die is getypt als IEnumerable<T>. |
| AsParallel(IEnumerable) |
Hiermee schakelt u parallelle uitvoering van een query in. |
| AsParallel<TSource>(IEnumerable<TSource>) |
Hiermee schakelt u parallelle uitvoering van een query in. |
| AsQueryable(IEnumerable) |
Converteert een IEnumerable naar een IQueryable. |
| AsQueryable<TElement>(IEnumerable<TElement>) |
Converteert een algemeen IEnumerable<T> naar een algemeen IQueryable<T>. |
| Average<TSource>(IEnumerable<TSource>, Func<TSource,Decimal>) |
Berekent het gemiddelde van een reeks Decimal waarden die worden verkregen door een transformatiefunctie aan te roepen op elk element van de invoerreeks. |
| Average<TSource>(IEnumerable<TSource>, Func<TSource,Double>) |
Berekent het gemiddelde van een reeks Double waarden die worden verkregen door een transformatiefunctie aan te roepen op elk element van de invoerreeks. |
| Average<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) |
Berekent het gemiddelde van een reeks Int32 waarden die worden verkregen door een transformatiefunctie aan te roepen op elk element van de invoerreeks. |
| Average<TSource>(IEnumerable<TSource>, Func<TSource,Int64>) |
Berekent het gemiddelde van een reeks Int64 waarden die worden verkregen door een transformatiefunctie aan te roepen op elk element van de invoerreeks. |
| Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Decimal>>) |
Berekent het gemiddelde van een reeks null-waarden Decimal die worden verkregen door een transformatiefunctie aan te roepen op elk element van de invoerreeks. |
| Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>) |
Berekent het gemiddelde van een reeks null-waarden Double die worden verkregen door een transformatiefunctie aan te roepen op elk element van de invoerreeks. |
| Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>) |
Berekent het gemiddelde van een reeks null-waarden Int32 die worden verkregen door een transformatiefunctie aan te roepen op elk element van de invoerreeks. |
| Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>) |
Berekent het gemiddelde van een reeks null-waarden Int64 die worden verkregen door een transformatiefunctie aan te roepen op elk element van de invoerreeks. |
| Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>) |
Berekent het gemiddelde van een reeks null-waarden Single die worden verkregen door een transformatiefunctie aan te roepen op elk element van de invoerreeks. |
| Average<TSource>(IEnumerable<TSource>, Func<TSource,Single>) |
Berekent het gemiddelde van een reeks Single waarden die worden verkregen door een transformatiefunctie aan te roepen op elk element van de invoerreeks. |
| Cast<TResult>(IEnumerable) |
Cast de elementen van een IEnumerable naar het opgegeven type. |
| Concat<TSource>(IEnumerable<TSource>, IEnumerable<TSource>) |
Voegt twee reeksen samen. |
| Contains<TSource>(IEnumerable<TSource>, TSource, IEqualityComparer<TSource>) |
Bepaalt of een reeks een opgegeven element bevat met behulp van een opgegeven IEqualityComparer<T>. |
| Contains<TSource>(IEnumerable<TSource>, TSource) |
Bepaalt of een reeks een opgegeven element bevat met behulp van de standaard gelijkheidsgelijker. |
| CopyToDataTable<T>(IEnumerable<T>, DataTable, LoadOption, FillErrorEventHandler) |
Hiermee kopieert u DataRow objecten naar de opgegeven DataTable, op basis van een invoerobject IEnumerable<T> waarbij de algemene parameter |
| CopyToDataTable<T>(IEnumerable<T>, DataTable, LoadOption) |
Hiermee kopieert u DataRow objecten naar de opgegeven DataTable, op basis van een invoerobject IEnumerable<T> waarbij de algemene parameter |
| CopyToDataTable<T>(IEnumerable<T>) |
Retourneert een DataTable object dat kopieën van de DataRow objecten bevat, op basis van een invoerobject IEnumerable<T> waarin de algemene parameter |
| Count<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Retourneert een getal dat aangeeft hoeveel elementen in de opgegeven reeks voldoen aan een voorwaarde. |
| Count<TSource>(IEnumerable<TSource>) |
Retourneert het aantal elementen in een reeks. |
| DefaultIfEmpty<TSource>(IEnumerable<TSource>, TSource) |
Retourneert de elementen van de opgegeven reeks of de opgegeven waarde in een singletonverzameling als de reeks leeg is. |
| DefaultIfEmpty<TSource>(IEnumerable<TSource>) |
Retourneert de elementen van de opgegeven reeks of de standaardwaarde van de typeparameter in een singletonverzameling als de reeks leeg is. |
| DescendantNodes<T>(IEnumerable<T>) |
Retourneert een verzameling van de onderliggende knooppunten van elk document en element in de bronverzameling. |
| Descendants<T>(IEnumerable<T>, XName) |
Retourneert een gefilterde verzameling elementen die de onderliggende elementen van elk element en document in de bronverzameling bevat. Alleen elementen die een overeenkomst XName hebben, worden opgenomen in de verzameling. |
| Descendants<T>(IEnumerable<T>) |
Retourneert een verzameling elementen die de onderliggende elementen van elk element en document in de bronverzameling bevat. |
| Distinct<TSource>(IEnumerable<TSource>, IEqualityComparer<TSource>) |
Retourneert afzonderlijke elementen uit een reeks met behulp van een opgegeven IEqualityComparer<T> om waarden te vergelijken. |
| Distinct<TSource>(IEnumerable<TSource>) |
Retourneert afzonderlijke elementen uit een reeks met behulp van de standaard gelijkheidsgelijker om waarden te vergelijken. |
| ElementAt<TSource>(IEnumerable<TSource>, Int32) |
Retourneert het element in een opgegeven index in een reeks. |
| ElementAtOrDefault<TSource>(IEnumerable<TSource>, Int32) |
Retourneert het element in een opgegeven index in een reeks of een standaardwaarde als de index buiten het bereik valt. |
| Elements<T>(IEnumerable<T>, XName) |
Retourneert een gefilterde verzameling van de onderliggende elementen van elk element en document in de bronverzameling. Alleen elementen die een overeenkomst XName hebben, worden opgenomen in de verzameling. |
| Elements<T>(IEnumerable<T>) |
Retourneert een verzameling onderliggende elementen van elk element en document in de bronverzameling. |
| Except<TSource>(IEnumerable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>) |
Produceert het setverschil van twee reeksen door de opgegeven IEqualityComparer<T> waarden te vergelijken. |
| Except<TSource>(IEnumerable<TSource>, IEnumerable<TSource>) |
Produceert het setverschil van twee reeksen met behulp van de standaard gelijkheidsgelijker om waarden te vergelijken. |
| First<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Retourneert het eerste element in een reeks die voldoet aan een opgegeven voorwaarde. |
| First<TSource>(IEnumerable<TSource>) |
Retourneert het eerste element van een reeks. |
| FirstOrDefault<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Retourneert het eerste element van de reeks die voldoet aan een voorwaarde of een standaardwaarde als er geen dergelijk element wordt gevonden. |
| FirstOrDefault<TSource>(IEnumerable<TSource>) |
Retourneert het eerste element van een reeks of een standaardwaarde als de reeks geen elementen bevat. |
| GroupBy<TSource,TKey,TElement,TResult>(IEnumerable<TSource>, Func<TSource, TKey>, Func<TSource,TElement>, Func<TKey,IEnumerable<TElement>, TResult>, IEqualityComparer<TKey>) |
Groepeer de elementen van een reeks op basis van een opgegeven sleutelkiezerfunctie en maakt een resultaatwaarde van elke groep en de bijbehorende sleutel. Sleutelwaarden worden vergeleken met behulp van een opgegeven vergelijkingsfunctie en de elementen van elke groep worden geprojecteerd met behulp van een opgegeven functie. |
| GroupBy<TSource,TKey,TElement,TResult>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, Func<TKey,IEnumerable<TElement>,TResult>) |
Groepeer de elementen van een reeks op basis van een opgegeven sleutelkiezerfunctie en maakt een resultaatwaarde van elke groep en de bijbehorende sleutel. De elementen van elke groep worden geprojecteerd met behulp van een opgegeven functie. |
| GroupBy<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, IEqualityComparer<TKey>) |
Hiermee worden de elementen van een reeks gegroepeerd op basis van een sleutelkiezerfunctie. De sleutels worden vergeleken met behulp van een vergelijkingsfunctie en de elementen van elke groep worden geprojecteerd met behulp van een opgegeven functie. |
| GroupBy<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>) |
Groepeert de elementen van een reeks op basis van een opgegeven sleutelkiezerfunctie en projecteert de elementen voor elke groep met behulp van een opgegeven functie. |
| GroupBy<TSource,TKey,TResult>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TKey,IEnumerable<TSource>,TResult>, IEqualityComparer<TKey>) |
Groepeer de elementen van een reeks op basis van een opgegeven sleutelkiezerfunctie en maakt een resultaatwaarde van elke groep en de bijbehorende sleutel. De sleutels worden vergeleken met behulp van een opgegeven vergelijkingsfunctie. |
| GroupBy<TSource,TKey,TResult>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TKey,IEnumerable<TSource>,TResult>) |
Groepeer de elementen van een reeks op basis van een opgegeven sleutelkiezerfunctie en maakt een resultaatwaarde van elke groep en de bijbehorende sleutel. |
| GroupBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
Groepeert de elementen van een reeks op basis van een opgegeven sleutelkiezerfunctie en vergelijkt de sleutels met behulp van een opgegeven vergelijkingsfunctie. |
| GroupBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Hiermee worden de elementen van een reeks gegroepeerd op basis van een opgegeven sleutelkiezerfunctie. |
| GroupJoin<TOuter,TInner,TKey,TResult>(IEnumerable<TOuter>, IEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,IEnumerable<TInner>, TResult>, IEqualityComparer<TKey>) |
Correleert de elementen van twee reeksen op basis van sleutel gelijkheid en groepeert de resultaten. Een opgegeven IEqualityComparer<T> wordt gebruikt om sleutels te vergelijken. |
| GroupJoin<TOuter,TInner,TKey,TResult>(IEnumerable<TOuter>, IEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,IEnumerable<TInner>, TResult>) |
Correleert de elementen van twee reeksen op basis van gelijkheid van sleutels en groepeert de resultaten. De standaard gelijkheidsgelijker wordt gebruikt om sleutels te vergelijken. |
| InDocumentOrder<T>(IEnumerable<T>) |
Retourneert een verzameling knooppunten die alle knooppunten in de bronverzameling bevat, gesorteerd in documentvolgorde. |
| Intersect<TSource>(IEnumerable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>) |
Produceert het snijpunt van twee reeksen met behulp van het opgegeven om IEqualityComparer<T> waarden te vergelijken. |
| Intersect<TSource>(IEnumerable<TSource>, IEnumerable<TSource>) |
Produceert het set snijpunt van twee reeksen met behulp van de standaard gelijkheidsgelijker om waarden te vergelijken. |
| Join<TOuter,TInner,TKey,TResult>(IEnumerable<TOuter>, IEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,TInner,TResult>, IEqualityComparer<TKey>) |
Correleert de elementen van twee reeksen op basis van overeenkomende sleutels. Een opgegeven IEqualityComparer<T> wordt gebruikt om sleutels te vergelijken. |
| Join<TOuter,TInner,TKey,TResult>(IEnumerable<TOuter>, IEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,TInner,TResult>) |
Correleert de elementen van twee reeksen op basis van overeenkomende sleutels. De standaard gelijkheidsgelijker wordt gebruikt om sleutels te vergelijken. |
| Last<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Retourneert het laatste element van een reeks die voldoet aan een opgegeven voorwaarde. |
| Last<TSource>(IEnumerable<TSource>) |
Retourneert het laatste element van een reeks. |
| LastOrDefault<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Retourneert het laatste element van een reeks die voldoet aan een voorwaarde of een standaardwaarde als er geen dergelijk element wordt gevonden. |
| LastOrDefault<TSource>(IEnumerable<TSource>) |
Retourneert het laatste element van een reeks of een standaardwaarde als de reeks geen elementen bevat. |
| LongCount<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Retourneert een Int64 waarde die aangeeft hoeveel elementen in een reeks voldoen aan een voorwaarde. |
| LongCount<TSource>(IEnumerable<TSource>) |
Retourneert een Int64 waarde die het totale aantal elementen in een reeks vertegenwoordigt. |
| Max<TSource,TResult>(IEnumerable<TSource>, Func<TSource,TResult>) |
Roept een transformatiefunctie aan op elk element van een algemene reeks en retourneert de maximum resulterende waarde. |
| Max<TSource>(IEnumerable<TSource>, Func<TSource,Decimal>) |
Roept een transformatiefunctie aan op elk element van een reeks en retourneert de maximumwaarde Decimal . |
| Max<TSource>(IEnumerable<TSource>, Func<TSource,Double>) |
Roept een transformatiefunctie aan op elk element van een reeks en retourneert de maximumwaarde Double . |
| Max<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) |
Roept een transformatiefunctie aan op elk element van een reeks en retourneert de maximumwaarde Int32 . |
| Max<TSource>(IEnumerable<TSource>, Func<TSource,Int64>) |
Roept een transformatiefunctie aan op elk element van een reeks en retourneert de maximumwaarde Int64 . |
| Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Decimal>>) |
Roept een transformatiefunctie aan op elk element van een reeks en retourneert de maximaal null-waarde Decimal . |
| Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>) |
Roept een transformatiefunctie aan op elk element van een reeks en retourneert de maximaal null-waarde Double . |
| Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>) |
Roept een transformatiefunctie aan op elk element van een reeks en retourneert de maximaal null-waarde Int32 . |
| Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>) |
Roept een transformatiefunctie aan op elk element van een reeks en retourneert de maximaal null-waarde Int64 . |
| Max<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>) |
Roept een transformatiefunctie aan op elk element van een reeks en retourneert de maximaal null-waarde Single . |
| Max<TSource>(IEnumerable<TSource>, Func<TSource,Single>) |
Roept een transformatiefunctie aan op elk element van een reeks en retourneert de maximumwaarde Single . |
| Max<TSource>(IEnumerable<TSource>) |
Retourneert de maximumwaarde in een algemene reeks. |
| Min<TSource,TResult>(IEnumerable<TSource>, Func<TSource,TResult>) |
Roept een transformatiefunctie aan op elk element van een algemene reeks en retourneert de minimum resulterende waarde. |
| Min<TSource>(IEnumerable<TSource>, Func<TSource,Decimal>) |
Roept een transformatiefunctie aan op elk element van een reeks en retourneert de minimumwaarde Decimal . |
| Min<TSource>(IEnumerable<TSource>, Func<TSource,Double>) |
Roept een transformatiefunctie aan op elk element van een reeks en retourneert de minimumwaarde Double . |
| Min<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) |
Roept een transformatiefunctie aan op elk element van een reeks en retourneert de minimumwaarde Int32 . |
| Min<TSource>(IEnumerable<TSource>, Func<TSource,Int64>) |
Roept een transformatiefunctie aan op elk element van een reeks en retourneert de minimumwaarde Int64 . |
| Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Decimal>>) |
Roept een transformatiefunctie aan op elk element van een reeks en retourneert de minimaal null-waarde Decimal . |
| Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>) |
Roept een transformatiefunctie aan op elk element van een reeks en retourneert de minimaal null-waarde Double . |
| Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>) |
Roept een transformatiefunctie aan op elk element van een reeks en retourneert de minimaal null-waarde Int32 . |
| Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>) |
Roept een transformatiefunctie aan op elk element van een reeks en retourneert de minimaal null-waarde Int64 . |
| Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>) |
Roept een transformatiefunctie aan op elk element van een reeks en retourneert de minimaal null-waarde Single . |
| Min<TSource>(IEnumerable<TSource>, Func<TSource,Single>) |
Roept een transformatiefunctie aan op elk element van een reeks en retourneert de minimumwaarde Single . |
| Min<TSource>(IEnumerable<TSource>) |
Retourneert de minimumwaarde in een algemene reeks. |
| Nodes<T>(IEnumerable<T>) |
Retourneert een verzameling van de onderliggende knooppunten van elk document en element in de bronverzameling. |
| OfType<TResult>(IEnumerable) |
Hiermee filtert u de elementen van een IEnumerable op basis van een opgegeven type. |
| OrderBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IComparer<TKey>) |
Hiermee sorteert u de elementen van een reeks in oplopende volgorde met behulp van een opgegeven vergelijkingsfunctie. |
| OrderBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Sorteert de elementen van een reeks in oplopende volgorde op basis van een sleutel. |
| OrderByDescending<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IComparer<TKey>) |
Hiermee sorteert u de elementen van een reeks in aflopende volgorde met behulp van een opgegeven vergelijkingsfunctie. |
| OrderByDescending<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Sorteert de elementen van een reeks in aflopende volgorde op basis van een sleutel. |
| Prepend<TSource>(IEnumerable<TSource>, TSource) |
Voegt een waarde toe aan het begin van de reeks. |
| Remove<T>(IEnumerable<T>) |
Hiermee verwijdert u elk knooppunt in de bronverzameling van het bovenliggende knooppunt. |
| Reverse<TSource>(IEnumerable<TSource>) |
Hiermee wordt de volgorde van de elementen in een reeks omgedraaid. |
| Select<TSource,TResult>(IEnumerable<TSource>, Func<TSource,Int32,TResult>) |
Projecteert elk element van een reeks in een nieuw formulier door de index van het element op te nemen. |
| Select<TSource,TResult>(IEnumerable<TSource>, Func<TSource,TResult>) |
Projecteert elk element van een reeks in een nieuwe vorm. |
| SelectMany<TSource,TCollection,TResult>(IEnumerable<TSource>, Func<TSource,IEnumerable<TCollection>>, Func<TSource,TCollection,TResult>) |
Projecteert elk element van een reeks naar een IEnumerable<T>, plat de resulterende reeksen in één reeks en roept een resultaatselectorfunctie aan op elk element daarin. |
| SelectMany<TSource,TCollection,TResult>(IEnumerable<TSource>, Func<TSource,Int32,IEnumerable<TCollection>>, Func<TSource,TCollection,TResult>) |
Projecteert elk element van een reeks naar een IEnumerable<T>, plat de resulterende reeksen in één reeks en roept een resultaatselectorfunctie aan op elk element daarin. De index van elk bronelement wordt gebruikt in de tussenliggende projectvorm van dat element. |
| SelectMany<TSource,TResult>(IEnumerable<TSource>, Func<TSource,IEnumerable<TResult>>) |
Projecteert elk element van een reeks naar een IEnumerable<T> en plat de resulterende reeksen in één reeks. |
| SelectMany<TSource,TResult>(IEnumerable<TSource>, Func<TSource,Int32,IEnumerable<TResult>>) |
Projecteert elk element van een reeks op een IEnumerable<T>, en plat de resulterende reeksen in één reeks. De index van elk bronelement wordt gebruikt in de verwachte vorm van dat element. |
| SequenceEqual<TSource>(IEnumerable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>) |
Bepaalt of twee reeksen gelijk zijn door hun elementen te vergelijken met behulp van een opgegeven IEqualityComparer<T>. |
| SequenceEqual<TSource>(IEnumerable<TSource>, IEnumerable<TSource>) |
Bepaalt of twee reeksen gelijk zijn door de elementen te vergelijken met behulp van de standaard gelijkheidsgelijker voor hun type. |
| Single<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Retourneert het enige element van een reeks die voldoet aan een opgegeven voorwaarde en genereert een uitzondering als er meer dan één dergelijk element bestaat. |
| Single<TSource>(IEnumerable<TSource>) |
Retourneert het enige element van een reeks en genereert een uitzondering als er niet precies één element in de reeks is. |
| SingleOrDefault<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Retourneert het enige element van een reeks die voldoet aan een opgegeven voorwaarde of een standaardwaarde als er geen dergelijk element bestaat; met deze methode wordt een uitzondering gegenereerd als meer dan één element voldoet aan de voorwaarde. |
| SingleOrDefault<TSource>(IEnumerable<TSource>) |
Retourneert het enige element van een reeks of een standaardwaarde als de reeks leeg is; met deze methode wordt een uitzondering gegenereerd als er meer dan één element in de reeks staat. |
| Skip<TSource>(IEnumerable<TSource>, Int32) |
Slaat een opgegeven aantal elementen in een reeks over en retourneert vervolgens de resterende elementen. |
| SkipLast<TSource>(IEnumerable<TSource>, Int32) |
Retourneert een nieuwe enumerable verzameling die de elementen bevat waaruit |
| SkipWhile<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Omzeilt elementen in een reeks zolang een opgegeven voorwaarde waar is en retourneert vervolgens de resterende elementen. |
| SkipWhile<TSource>(IEnumerable<TSource>, Func<TSource,Int32,Boolean>) |
Omzeilt elementen in een reeks zolang een opgegeven voorwaarde waar is en retourneert vervolgens de resterende elementen. De index van het element wordt gebruikt in de logica van de predicaatfunctie. |
| Sum<TSource>(IEnumerable<TSource>, Func<TSource,Decimal>) |
Berekent de som van de reeks Decimal waarden die worden verkregen door een transformatiefunctie aan te roepen op elk element van de invoerreeks. |
| Sum<TSource>(IEnumerable<TSource>, Func<TSource,Double>) |
Berekent de som van de reeks Double waarden die worden verkregen door een transformatiefunctie aan te roepen op elk element van de invoerreeks. |
| Sum<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) |
Berekent de som van de reeks Int32 waarden die worden verkregen door een transformatiefunctie aan te roepen op elk element van de invoerreeks. |
| Sum<TSource>(IEnumerable<TSource>, Func<TSource,Int64>) |
Berekent de som van de reeks Int64 waarden die worden verkregen door een transformatiefunctie aan te roepen op elk element van de invoerreeks. |
| Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Decimal>>) |
Berekent de som van de reeks null-waarden Decimal die worden verkregen door een transformatiefunctie aan te roepen op elk element van de invoerreeks. |
| Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>) |
Berekent de som van de reeks null-waarden Double die worden verkregen door een transformatiefunctie aan te roepen op elk element van de invoerreeks. |
| Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>) |
Berekent de som van de reeks null-waarden Int32 die worden verkregen door een transformatiefunctie aan te roepen op elk element van de invoerreeks. |
| Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>) |
Berekent de som van de reeks null-waarden Int64 die worden verkregen door een transformatiefunctie aan te roepen op elk element van de invoerreeks. |
| Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>) |
Berekent de som van de reeks null-waarden Single die worden verkregen door een transformatiefunctie aan te roepen op elk element van de invoerreeks. |
| Sum<TSource>(IEnumerable<TSource>, Func<TSource,Single>) |
Berekent de som van de reeks Single waarden die worden verkregen door een transformatiefunctie aan te roepen op elk element van de invoerreeks. |
| Take<TSource>(IEnumerable<TSource>, Int32) |
Retourneert een opgegeven aantal aaneengesloten elementen vanaf het begin van een reeks. |
| TakeLast<TSource>(IEnumerable<TSource>, Int32) |
Retourneert een nieuwe enumerable verzameling die de laatste |
| TakeWhile<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Retourneert elementen uit een reeks zolang een opgegeven voorwaarde waar is. |
| TakeWhile<TSource>(IEnumerable<TSource>, Func<TSource,Int32,Boolean>) |
Retourneert elementen uit een reeks zolang een opgegeven voorwaarde waar is. De index van het element wordt gebruikt in de logica van de predicaatfunctie. |
| ToArray<TSource>(IEnumerable<TSource>) |
Hiermee maakt u een matrix van een IEnumerable<T>. |
| ToDictionary<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, IEqualityComparer<TKey>) |
Hiermee maakt u een Dictionary<TKey,TValue> van een IEnumerable<T> op basis van een opgegeven sleutelkiezerfunctie, een vergelijkingsfunctie en een elementselectorfunctie. |
| ToDictionary<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>) |
Hiermee maakt u een Dictionary<TKey,TValue> van een op basis van de IEnumerable<T> opgegeven sleutelkiezer- en elementselectorfuncties. |
| ToDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
Hiermee maakt u een Dictionary<TKey,TValue> van een IEnumerable<T> op basis van een opgegeven sleutelkiezerfunctie en sleutelkiezer. |
| ToDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Hiermee maakt u een Dictionary<TKey,TValue> van een IEnumerable<T> op basis van een opgegeven sleutelkiezerfunctie. |
| ToHashSet<TSource>(IEnumerable<TSource>, IEqualityComparer<TSource>) |
Hiermee maakt u een HashSet<T> van een IEnumerable<T> met behulp van de |
| ToHashSet<TSource>(IEnumerable<TSource>) |
Hiermee maakt u een HashSet<T> van een IEnumerable<T>. |
| ToImmutableArray<TSource>(IEnumerable<TSource>) |
Hiermee maakt u een onveranderbare matrix op basis van de opgegeven verzameling. |
| ToImmutableDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>, IEqualityComparer<TKey>, IEqualityComparer<TValue>) |
Inventariseert en transformeert een reeks en produceert een onveranderbare woordenlijst van de inhoud met behulp van de opgegeven sleutel- en waarde-vergelijkingen. |
| ToImmutableDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>, IEqualityComparer<TKey>) |
Inventariseert en transformeert een reeks en produceert een onveranderbare woordenlijst van de inhoud met behulp van de opgegeven sleutel-vergelijkingsfunctie. |
| ToImmutableDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>) |
Inventariseert en transformeert een reeks en produceert een onveranderbare woordenlijst van de inhoud. |
| ToImmutableDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
Maakt een onveranderbare woordenlijst op basis van een bepaalde transformatie van een reeks. |
| ToImmutableDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Hiermee wordt een onveranderbare woordenlijst samengesteld op basis van een bestaande verzameling elementen, waarbij een transformatiefunctie wordt toegepast op de bronsleutels. |
| ToImmutableHashSet<TSource>(IEnumerable<TSource>, IEqualityComparer<TSource>) |
Inventariseert een reeks, produceert een onveranderbare hashset van de inhoud en maakt gebruik van de opgegeven gelijkheidsgelijker voor het settype. |
| ToImmutableHashSet<TSource>(IEnumerable<TSource>) |
Inventariseert een reeks en produceert een onveranderbare hashset van de inhoud. |
| ToImmutableList<TSource>(IEnumerable<TSource>) |
Inventariseert een reeks en produceert een onveranderbare lijst met inhoud. |
| ToImmutableSortedDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>, IComparer<TKey>, IEqualityComparer<TValue>) |
Inventariseert en transformeert een reeks en produceert een onveranderbare gesorteerde woordenlijst van de inhoud met behulp van de opgegeven sleutel- en waarde-vergelijkingen. |
| ToImmutableSortedDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>, IComparer<TKey>) |
Inventariseert en transformeert een reeks en produceert een onveranderbare gesorteerde woordenlijst van de inhoud met behulp van de opgegeven sleutel vergelijken. |
| ToImmutableSortedDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>) |
Inventariseert en transformeert een reeks en produceert een onveranderbare gesorteerde woordenlijst van de inhoud. |
| ToImmutableSortedSet<TSource>(IEnumerable<TSource>, IComparer<TSource>) |
Inventariseert een reeks, produceert een onveranderbare gesorteerde set inhoud en maakt gebruik van de opgegeven vergelijkingsfunctie. |
| ToImmutableSortedSet<TSource>(IEnumerable<TSource>) |
Inventariseert een reeks en produceert een onveranderbare gesorteerde set inhoud. |
| ToList<TSource>(IEnumerable<TSource>) |
Hiermee maakt u een List<T> van een IEnumerable<T>. |
| ToLookup<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, IEqualityComparer<TKey>) |
Hiermee maakt u een Lookup<TKey,TElement> van een IEnumerable<T> op basis van een opgegeven sleutelkiezerfunctie, een vergelijkingsfunctie en een elementselectorfunctie. |
| ToLookup<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>) |
Hiermee maakt u een Lookup<TKey,TElement> van een op basis van de IEnumerable<T> opgegeven sleutelkiezer- en elementselectorfuncties. |
| ToLookup<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
Hiermee maakt u een Lookup<TKey,TElement> van een IEnumerable<T> op basis van een opgegeven sleutelkiezerfunctie en sleutelkiezer. |
| ToLookup<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Hiermee maakt u een Lookup<TKey,TElement> van een IEnumerable<T> op basis van een opgegeven sleutelkiezerfunctie. |
| Union<TSource>(IEnumerable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>) |
Produceert de set-samenvoeging van twee reeksen met behulp van een opgegeven IEqualityComparer<T>. |
| Union<TSource>(IEnumerable<TSource>, IEnumerable<TSource>) |
Produceert de set-samenvoeging van twee reeksen met behulp van de standaard gelijkheidsgelijker. |
| Where<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) |
Hiermee filtert u een reeks waarden op basis van een predicaat. |
| Where<TSource>(IEnumerable<TSource>, Func<TSource,Int32,Boolean>) |
Hiermee filtert u een reeks waarden op basis van een predicaat. De index van elk element wordt gebruikt in de logica van de predicaatfunctie. |
| Zip<TFirst,TSecond,TResult>(IEnumerable<TFirst>, IEnumerable<TSecond>, Func<TFirst,TSecond,TResult>) |
Hiermee past u een opgegeven functie toe op de bijbehorende elementen van twee reeksen, waardoor een reeks resultaten wordt geproduceerd. |