Dieser Artikel wurde maschinell übersetzt. Wenn Sie die englische Version des Artikels anzeigen möchten, aktivieren Sie das Kontrollkästchen Englisch. Sie können den englischen Text auch in einem Popupfenster anzeigen, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

Expression.New-Methode: (ConstructorInfo, IEnumerable<Expression>, MemberInfo[])

 

Veröffentlicht: Oktober 2016

Erstellt eine NewExpression, die den Aufruf des angegebenen Konstruktors mit den angegebenen Argumenten darstellt. Es werden die Member als Array angegeben, die auf die durch den Konstruktor initialisierten Felder zugreifen.

Namespace:   System.Linq.Expressions
Assembly:  System.Core (in System.Core.dll)

public static NewExpression New(
	ConstructorInfo constructor,
	IEnumerable<Expression> arguments,
	params MemberInfo[] members
)

Parameter

constructor
Type: System.Reflection.ConstructorInfo

Die ConstructorInfo, auf das die Constructor-Eigenschaft festgelegt werden soll.

arguments
Type: System.Collections.Generic.IEnumerable<Expression>

Ein IEnumerable<T>, das Expression-Objekte enthält, mit denen die Arguments-Auflistung aufgefüllt werden soll.

members
Type: System.Reflection.MemberInfo[]

Ein Array von MemberInfo-Objekten, mit denen die Members-Auflistung aufgefüllt wird.

Rückgabewert

Type: System.Linq.Expressions.NewExpression

Ein NewExpression, bei dem die NodeType-Eigenschaft gleich New ist und die Eigenschaften Constructor, Arguments und Members auf die angegebenen Werte festgelegt sind.

Exception Condition
ArgumentNullException

constructor ist null.

- oder -

Ein Element von arguments ist null.

- oder -

Ein Element von members ist null.

ArgumentException

Die arguments -Parameter enthält nicht die gleiche Anzahl von Elementen als die Anzahl der Parameter des Konstruktors, der constructor darstellt.

- oder -

Die Type Eigenschaft eines Elements von arguments lässt sich nicht in den Typ des entsprechenden Parameters des Konstruktors, der constructor darstellt.

- oder -

Die members Parameter besitzt nicht die gleiche Anzahl von Elementen wie arguments.

- oder -

Ein Element von arguments hat eine Type -Eigenschaft, die einen Typ darstellt, der nicht dem Typ des Members zugeordnet werden, die durch das entsprechende Element dargestellt wird members.

Die arguments Parameter muss die gleiche Anzahl von Elementen als die Anzahl der Parameter des Konstruktors durch dargestellt enthalten constructor. Wenn arguments ist null, es wird als leer betrachtet, und der Arguments -Eigenschaft der resultierenden NewExpression ist eine leere Auflistung.

Wenn members ist null, der Members -Eigenschaft der resultierenden NewExpression ist eine leere Auflistung. Wenn members nicht null, müssen die gleiche Anzahl von Elementen wie arguments und jedes Element darf nicht null. Jedes Element der members muss ein PropertyInfo, FieldInfo oder MethodInfo die einen Instanzmember des deklarierenden Typs des durch dargestellten Konstruktors darstellt constructor. Wenn es eine Eigenschaft darstellt, muss die Eigenschaft den Wert des zugeordneten Felds abrufen können. Das entsprechende Element der arguments für jedes Element der members muss eine Type -Eigenschaft, die einen Typ darstellt, der in den Typ des Members zugeordnet werden, die die members Element darstellt.

Die Type -Eigenschaft der resultierenden NewExpression den deklarierenden Typ des Konstruktors darstellt, die constructor darstellt.

Universelle Windows-Plattform
Verfügbar seit 8
.NET Framework
Verfügbar seit 3.5
Portierbare Klassenbibliothek
Unterstützt in: portierbare .NET-Plattformen
Silverlight
Verfügbar seit 2.0
Windows Phone Silverlight
Verfügbar seit 7.0
Windows Phone
Verfügbar seit 8.1
Zurück zum Anfang
Anzeigen: