Questo articolo è stato tradotto automaticamente. Per visualizzare l'articolo in inglese, selezionare la casella di controllo Inglese. È possibile anche visualizzare il testo inglese in una finestra popup posizionando il puntatore del mouse sopra il testo.
Traduzione
Inglese

Metodo Expression.New (ConstructorInfo, IEnumerable<Expression>, MemberInfo[])

 

Data di pubblicazione: novembre 2016

Crea un oggetto NewExpression che rappresenta la chiamata al costruttore specificato con gli argomenti specificati. I membri che accedono ai campi inizializzati del costruttore sono specificati come matrice.

Spazio dei nomi:   System.Linq.Expressions
Assembly:  System.Core (in System.Core.dll)

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

Parametri

constructor
Type: System.Reflection.ConstructorInfo

Oggetto ConstructorInfo su cui impostare la proprietà Constructor.

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

Oggetto IEnumerable<T> contenente gli oggetti Expression da usare per popolare la raccolta Arguments.

members
Type: System.Reflection.MemberInfo[]

Matrice di oggetti MemberInfo da usare per popolare la raccolta Members.

Valore restituito

Type: System.Linq.Expressions.NewExpression

Oggetto NewExpression la cui proprietà NodeType è uguale a New e le cui proprietà Constructor, Arguments e Members sono impostate sui valori specificati.

Exception Condition
ArgumentNullException

constructor è null.

-oppure-

Un elemento di arguments è null.

-oppure-

Un elemento di members è null.

ArgumentException

Il arguments parametro non contiene lo stesso numero di elementi come il numero di parametri per il costruttore che constructor rappresenta.

-oppure-

Il Type proprietà di un elemento di arguments non è assegnabile al tipo del parametro corrispondente del costruttore che constructor rappresenta.

-oppure-

Il members parametro ha lo stesso numero di elementi come arguments.

-oppure-

Un elemento di arguments ha un Type proprietà che rappresenta un tipo che non è assegnabile al tipo del membro rappresentato dall'elemento corrispondente di members.

Il arguments parametro deve contenere lo stesso numero di elementi come il numero di parametri per il costruttore rappresentato da constructor. Se arguments è null, viene considerato vuoto e il Arguments proprietà dell'oggetto risultante NewExpression è una raccolta vuota.

Se members è null, Members proprietà dell'oggetto risultante NewExpression è una raccolta vuota. Se members non null, deve avere lo stesso numero di elementi come arguments e ogni elemento non deve essere null. Ogni elemento di members deve essere un PropertyInfo, FieldInfo o MethodInfo che rappresenta un membro di istanza sul tipo dichiarante del costruttore rappresentato da constructor. Se rappresenta una proprietà, la proprietà deve essere in grado di recuperare il valore del campo associato. L'elemento corrispondente di arguments per ogni elemento della members deve avere un Type proprietà che rappresenta un tipo assegnabile al tipo del membro che la members elemento rappresenta.

Il Type proprietà dell'oggetto risultante NewExpression rappresenta il tipo dichiarante del costruttore che constructor rappresenta.

Universal Windows Platform
Disponibile da 8
.NET Framework
Disponibile da 3.5
Libreria di classi portabile
Supportato in: piattaforme .NET portabili
Silverlight
Disponibile da 2.0
Windows Phone Silverlight
Disponibile da 7.0
Windows Phone
Disponibile da 8.1
Torna all'inizio
Mostra: