ElementInit Klasse

Definition

Stellt einen Initialisierer für ein einzelnes Element einer IEnumerable-Auflistung dar.Represents an initializer for a single element of an IEnumerable collection.

public ref class ElementInit sealed : System::Linq::Expressions::IArgumentProvider
public ref class ElementInit sealed
public sealed class ElementInit : System.Linq.Expressions.IArgumentProvider
public sealed class ElementInit
type ElementInit = class
    interface IArgumentProvider
type ElementInit = class
Public NotInheritable Class ElementInit
Implements IArgumentProvider
Public NotInheritable Class ElementInit
Vererbung
ElementInit
Implementiert

Beispiele

Im folgenden Beispiel wird ein- ElementInit Element erstellt, das die Initialisierung eines Elements einer Wörterbuch Auflistung darstellt.The following example creates an ElementInit that represents the initialization of an element of a dictionary collection.

string tree = "maple";

System.Reflection.MethodInfo addMethod = typeof(Dictionary<int, string>).GetMethod("Add");

// Create an ElementInit that represents calling
// Dictionary<int, string>.Add(tree.Length, tree).
System.Linq.Expressions.ElementInit elementInit =
    System.Linq.Expressions.Expression.ElementInit(
        addMethod,
        System.Linq.Expressions.Expression.Constant(tree.Length),
        System.Linq.Expressions.Expression.Constant(tree));

Console.WriteLine(elementInit.ToString());

// This code produces the following output:
//
// Void Add(Int32, System.String)(5,"maple")
Dim tree As String = "maple"

Dim addMethod As System.Reflection.MethodInfo = _
    Type.GetType("System.Collections.Generic.Dictionary`2[System.Int32, System.String]").GetMethod("Add")

' Create an ElementInit that represents calling
' Dictionary(Of Integer, String).Add(tree.Length, tree).
Dim elementInit As System.Linq.Expressions.ElementInit = _
    System.Linq.Expressions.Expression.ElementInit( _
        addMethod, _
        System.Linq.Expressions.Expression.Constant(tree.Length), _
        System.Linq.Expressions.Expression.Constant(tree))

Console.WriteLine(elementInit.ToString())

' This code produces the following output:
'
' Void Add(Int32, System.String)(5,"maple")

Eigenschaften

AddMethod

Ruft die Instanzmethode ab, mit der ein Element zu einer IEnumerable-Auflistung hinzugefügt wird.Gets the instance method that is used to add an element to an IEnumerable collection.

Arguments

Ruft die Auflistung von Argumenten ab, die an eine Methode übergeben werden, die einer IEnumerable-Auflistung ein Element hinzufügt.Gets the collection of arguments that are passed to a method that adds an element to an IEnumerable collection.

Methoden

Equals(Object)

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.Determines whether the specified object is equal to the current object.

(Geerbt von Object)
GetHashCode()

Fungiert als Standardhashfunktion.Serves as the default hash function.

(Geerbt von Object)
GetType()

Ruft den Type der aktuellen Instanz ab.Gets the Type of the current instance.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

(Geerbt von Object)
ToString()

Gibt eine Textdarstellung eines ElementInit-Objekts zurück.Returns a textual representation of an ElementInit object.

Update(IEnumerable<Expression>)

Erstellt einen neuen Ausdruck, der diesem ähnelt, verwendet jedoch die angegebenen untergeordneten Elemente.Creates a new expression that is like this one, but using the supplied children. Wenn alle untergeordneten Elemente identisch sind, wird dieser Ausdruck zurückgegeben.If all of the children are the same, it will return this expression.

Explizite Schnittstellenimplementierungen

IArgumentProvider.ArgumentCount

Gibt die Anzahl der Argumente für den Ausdrucksstrukturknoten zurück.Returns the number of arguments to the expression tree node. Sie sollten diesen Member nicht verwenden.You should not use this member. Es ist nur aufgrund der Assemblyumgestaltung öffentlich und wird intern zur Leistungsoptimierung verwendet.It is only public due to assembly refactoring, and it is used internally for performance optimizations.

IArgumentProvider.GetArgument(Int32)

Gibt das Argument bei Index zurück, das ausgelöst wird, wenn der Index außerhalb des gültigen Bereichs liegt.Returns the argument at index, throwing if index is out of bounds. Sie sollten diesen Member nicht verwenden.You should not use this member. Es ist nur aufgrund der Assemblyumgestaltung öffentlich und wird intern zur Leistungsoptimierung verwendet.It is only public due to assembly refactoring, and it is used internally for performance optimizations.

Gilt für: