Expression.New Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Crea un oggetto NewExpression.
Overload
New(ConstructorInfo) |
Crea un oggetto NewExpression che rappresenta la chiamata al costruttore specificato che non accetta argomenti. |
New(Type) |
Crea un oggetto NewExpression che rappresenta la chiamata al costruttore senza parametri del tipo specificato. |
New(ConstructorInfo, IEnumerable<Expression>) |
Crea un oggetto NewExpression che rappresenta la chiamata al costruttore specificato con gli argomenti specificati. |
New(ConstructorInfo, Expression[]) |
Crea un oggetto NewExpression che rappresenta la chiamata al costruttore specificato con gli argomenti specificati. |
New(ConstructorInfo, IEnumerable<Expression>, IEnumerable<MemberInfo>) |
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. |
New(ConstructorInfo, IEnumerable<Expression>, MemberInfo[]) |
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. |
New(ConstructorInfo)
- Origine:
- NewExpression.cs
- Origine:
- NewExpression.cs
- Origine:
- NewExpression.cs
Crea un oggetto NewExpression che rappresenta la chiamata al costruttore specificato che non accetta argomenti.
public:
static System::Linq::Expressions::NewExpression ^ New(System::Reflection::ConstructorInfo ^ constructor);
public static System.Linq.Expressions.NewExpression New (System.Reflection.ConstructorInfo constructor);
static member New : System.Reflection.ConstructorInfo -> System.Linq.Expressions.NewExpression
Public Shared Function New (constructor As ConstructorInfo) As NewExpression
Parametri
- constructor
- ConstructorInfo
Oggetto ConstructorInfo su cui impostare la proprietà Constructor.
Restituisce
Oggetto NewExpression la cui proprietà NodeType è uguale a New e la cui proprietà Constructor è impostata sul valore specificato.
Eccezioni
constructor
è null
.
Il costruttore che constructor
rappresenta ha almeno un parametro.
Commenti
Le Arguments proprietà e Members dell'oggetto risultante NewExpression sono raccolte vuote. La Type proprietà rappresenta il tipo dichiarante del costruttore rappresentato da constructor
.
Si applica a
New(Type)
- Origine:
- NewExpression.cs
- Origine:
- NewExpression.cs
- Origine:
- NewExpression.cs
Crea un oggetto NewExpression che rappresenta la chiamata al costruttore senza parametri del tipo specificato.
public:
static System::Linq::Expressions::NewExpression ^ New(Type ^ type);
public static System.Linq.Expressions.NewExpression New (Type type);
static member New : Type -> System.Linq.Expressions.NewExpression
Public Shared Function New (type As Type) As NewExpression
Parametri
Restituisce
Oggetto NewExpression la cui proprietà NodeType è uguale a New e la cui proprietà Constructor è impostata su ConstructorInfo, che rappresenta il costruttore senza parametri per il tipo specificato.
Eccezioni
type
è null
.
Il tipo rappresentato da type
non dispone di un costruttore senza parametri.
Esempio
Nell'esempio seguente viene illustrato come utilizzare il New(Type) metodo per creare un NewExpression oggetto che rappresenta la costruzione di una nuova istanza di un oggetto dizionario chiamando il costruttore senza parametri.
// Create a NewExpression that represents constructing
// a new instance of Dictionary<int, string>.
System.Linq.Expressions.NewExpression newDictionaryExpression =
System.Linq.Expressions.Expression.New(typeof(Dictionary<int, string>));
Console.WriteLine(newDictionaryExpression.ToString());
// This code produces the following output:
//
// new Dictionary`2()
' Create a NewExpression that represents constructing
' a new instance of Dictionary(Of Integer, String).
Dim newDictionaryExpression As System.Linq.Expressions.NewExpression = _
System.Linq.Expressions.Expression.[New]( _
Type.GetType("System.Collections.Generic.Dictionary`2[System.Int32, System.String]"))
Console.WriteLine(newDictionaryExpression.ToString())
' This code produces the following output:
'
' new Dictionary`2()
Commenti
Il type
parametro deve rappresentare un tipo con un costruttore senza parametri.
Le Arguments proprietà e Members dell'oggetto risultante NewExpression sono raccolte vuote. La Type proprietà è uguale a type
.
Si applica a
New(ConstructorInfo, IEnumerable<Expression>)
- Origine:
- NewExpression.cs
- Origine:
- NewExpression.cs
- Origine:
- NewExpression.cs
Crea un oggetto NewExpression che rappresenta la chiamata al costruttore specificato con gli argomenti specificati.
public:
static System::Linq::Expressions::NewExpression ^ New(System::Reflection::ConstructorInfo ^ constructor, System::Collections::Generic::IEnumerable<System::Linq::Expressions::Expression ^> ^ arguments);
public static System.Linq.Expressions.NewExpression New (System.Reflection.ConstructorInfo constructor, System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression> arguments);
public static System.Linq.Expressions.NewExpression New (System.Reflection.ConstructorInfo constructor, System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression>? arguments);
static member New : System.Reflection.ConstructorInfo * seq<System.Linq.Expressions.Expression> -> System.Linq.Expressions.NewExpression
Public Shared Function New (constructor As ConstructorInfo, arguments As IEnumerable(Of Expression)) As NewExpression
Parametri
- constructor
- ConstructorInfo
Oggetto ConstructorInfo su cui impostare la proprietà Constructor.
- arguments
- IEnumerable<Expression>
Oggetto IEnumerable<T> contenente gli oggetti Expression da usare per popolare la raccolta Arguments.
Restituisce
Oggetto NewExpression la cui proprietà NodeType è uguale a New e le cui proprietà Constructor e Arguments sono impostate sui valori specificati.
Eccezioni
Il numero di elementi in arguments
è diverso dal numero di parametri per il costruttore rappresentato da constructor
.
-oppure-
La proprietà Type di un elemento di arguments
non può essere assegnata al tipo del parametro corrispondente del costruttore rappresentato da constructor
.
Commenti
Il arguments
parametro deve contenere lo stesso numero di elementi del numero di parametri per il costruttore rappresentato da constructor
. Se arguments
è null
, viene considerato vuoto e la Arguments proprietà dell'oggetto risultante NewExpression è una raccolta vuota.
La Type proprietà dell'oggetto risultante NewExpression rappresenta il tipo dichiarante del costruttore rappresentato da constructor
. La Members proprietà è una raccolta vuota.
Si applica a
New(ConstructorInfo, Expression[])
- Origine:
- NewExpression.cs
- Origine:
- NewExpression.cs
- Origine:
- NewExpression.cs
Crea un oggetto NewExpression che rappresenta la chiamata al costruttore specificato con gli argomenti specificati.
public:
static System::Linq::Expressions::NewExpression ^ New(System::Reflection::ConstructorInfo ^ constructor, ... cli::array <System::Linq::Expressions::Expression ^> ^ arguments);
public static System.Linq.Expressions.NewExpression New (System.Reflection.ConstructorInfo constructor, params System.Linq.Expressions.Expression[] arguments);
public static System.Linq.Expressions.NewExpression New (System.Reflection.ConstructorInfo constructor, params System.Linq.Expressions.Expression[]? arguments);
static member New : System.Reflection.ConstructorInfo * System.Linq.Expressions.Expression[] -> System.Linq.Expressions.NewExpression
Public Shared Function New (constructor As ConstructorInfo, ParamArray arguments As Expression()) As NewExpression
Parametri
- constructor
- ConstructorInfo
Oggetto ConstructorInfo su cui impostare la proprietà Constructor.
- arguments
- Expression[]
Matrice di oggetti Expression da usare per popolare la raccolta Arguments.
Restituisce
Oggetto NewExpression la cui proprietà NodeType è uguale a New e le cui proprietà Constructor e Arguments sono impostate sui valori specificati.
Eccezioni
La lunghezza di arguments
corrisponde al numero di parametri per il costruttore rappresentato da constructor
.
-oppure-
La proprietà Type di un elemento di arguments
non può essere assegnata al tipo del parametro corrispondente del costruttore rappresentato da constructor
.
Commenti
Il arguments
parametro deve contenere lo stesso numero di elementi del numero di parametri per il costruttore rappresentato da constructor
. Se arguments
è null
, viene considerato vuoto e la Arguments proprietà dell'oggetto risultante NewExpression è una raccolta vuota.
La Type proprietà dell'oggetto risultante NewExpression rappresenta il tipo dichiarante del costruttore rappresentato da constructor
. La Members proprietà è una raccolta vuota.
Si applica a
New(ConstructorInfo, IEnumerable<Expression>, IEnumerable<MemberInfo>)
- Origine:
- NewExpression.cs
- Origine:
- NewExpression.cs
- Origine:
- NewExpression.cs
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.
public:
static System::Linq::Expressions::NewExpression ^ New(System::Reflection::ConstructorInfo ^ constructor, System::Collections::Generic::IEnumerable<System::Linq::Expressions::Expression ^> ^ arguments, System::Collections::Generic::IEnumerable<System::Reflection::MemberInfo ^> ^ members);
public static System.Linq.Expressions.NewExpression New (System.Reflection.ConstructorInfo constructor, System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression> arguments, System.Collections.Generic.IEnumerable<System.Reflection.MemberInfo> members);
public static System.Linq.Expressions.NewExpression New (System.Reflection.ConstructorInfo constructor, System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression>? arguments, System.Collections.Generic.IEnumerable<System.Reflection.MemberInfo>? members);
static member New : System.Reflection.ConstructorInfo * seq<System.Linq.Expressions.Expression> * seq<System.Reflection.MemberInfo> -> System.Linq.Expressions.NewExpression
Public Shared Function New (constructor As ConstructorInfo, arguments As IEnumerable(Of Expression), members As IEnumerable(Of MemberInfo)) As NewExpression
Parametri
- constructor
- ConstructorInfo
Oggetto ConstructorInfo su cui impostare la proprietà Constructor.
- arguments
- IEnumerable<Expression>
Oggetto IEnumerable<T> contenente gli oggetti Expression da usare per popolare la raccolta Arguments.
- members
- IEnumerable<MemberInfo>
Oggetto IEnumerable<T> contenente gli oggetti MemberInfo da usare per popolare la raccolta Members.
Restituisce
Oggetto NewExpression la cui proprietà NodeType è uguale a New e le cui proprietà Constructor, Arguments e Members sono impostate sui valori specificati.
Eccezioni
constructor
è null
.
-oppure-
Un elemento di arguments
è null
.
-oppure-
Un elemento di members
è null
.
Il numero di elementi in arguments
è diverso dal numero di parametri per il costruttore rappresentato da constructor
.
-oppure-
La proprietà Type di un elemento di arguments
non può essere assegnata al tipo del parametro corrispondente del costruttore rappresentato da constructor
.
-oppure-
Il numero di elementi nel parametro members
è diverso da quello in arguments
.
-oppure-
La proprietà Type di un elemento di arguments
rappresenta un tipo non assegnabile al tipo del membro rappresentato dall'elemento corrispondente di members
.
Commenti
Il arguments
parametro deve contenere lo stesso numero di elementi del numero di parametri per il costruttore rappresentato da constructor
. Se arguments
è null
, viene considerato vuoto e la Arguments proprietà dell'oggetto risultante NewExpression è una raccolta vuota.
Se members
è null
, la Members proprietà dell'oggetto risultante NewExpression è una raccolta vuota. Se members
non null
è , deve avere lo stesso numero di elementi arguments
di e ogni elemento non deve essere null
. Ogni elemento di deve essere un PropertyInfoFieldInfo oggetto o MethodInfo che rappresenta un membro dell'istanza members
nel tipo dichiarante del costruttore rappresentato da constructor
. Se rappresenta una proprietà, la proprietà deve avere una get
funzione di accesso. L'elemento corrispondente di arguments
per ogni elemento di members
deve avere una Type proprietà che rappresenta un tipo assegnabile al tipo del membro rappresentato dall'elemento members
.
La Type proprietà dell'oggetto risultante NewExpression rappresenta il tipo dichiarante del costruttore rappresentato constructor
.
Si applica a
New(ConstructorInfo, IEnumerable<Expression>, MemberInfo[])
- Origine:
- NewExpression.cs
- Origine:
- NewExpression.cs
- Origine:
- NewExpression.cs
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.
public:
static System::Linq::Expressions::NewExpression ^ New(System::Reflection::ConstructorInfo ^ constructor, System::Collections::Generic::IEnumerable<System::Linq::Expressions::Expression ^> ^ arguments, ... cli::array <System::Reflection::MemberInfo ^> ^ members);
public static System.Linq.Expressions.NewExpression New (System.Reflection.ConstructorInfo constructor, System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression> arguments, params System.Reflection.MemberInfo[] members);
public static System.Linq.Expressions.NewExpression New (System.Reflection.ConstructorInfo constructor, System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression>? arguments, params System.Reflection.MemberInfo[]? members);
static member New : System.Reflection.ConstructorInfo * seq<System.Linq.Expressions.Expression> * System.Reflection.MemberInfo[] -> System.Linq.Expressions.NewExpression
Public Shared Function New (constructor As ConstructorInfo, arguments As IEnumerable(Of Expression), ParamArray members As MemberInfo()) As NewExpression
Parametri
- constructor
- ConstructorInfo
Oggetto ConstructorInfo su cui impostare la proprietà Constructor.
- arguments
- IEnumerable<Expression>
Oggetto IEnumerable<T> contenente gli oggetti Expression da usare per popolare la raccolta Arguments.
- members
- MemberInfo[]
Matrice di oggetti MemberInfo da usare per popolare la raccolta Members.
Restituisce
Oggetto NewExpression la cui proprietà NodeType è uguale a New e le cui proprietà Constructor, Arguments e Members sono impostate sui valori specificati.
Eccezioni
constructor
è null
.
-oppure-
Un elemento di arguments
è null
.
-oppure-
Un elemento di members
è null
.
Il numero di elementi in arguments
è diverso dal numero di parametri per il costruttore rappresentato da constructor
.
-oppure-
La proprietà Type di un elemento di arguments
non può essere assegnata al tipo del parametro corrispondente del costruttore rappresentato da constructor
.
-oppure-
Il numero di elementi nel parametro members
è diverso da quello in arguments
.
-oppure-
La proprietà Type di un elemento di arguments
rappresenta un tipo non assegnabile al tipo del membro rappresentato dall'elemento corrispondente di members
.
Commenti
Il arguments
parametro deve contenere lo stesso numero di elementi del numero di parametri per il costruttore rappresentato da constructor
. Se arguments
è null
, viene considerato vuoto e la Arguments proprietà dell'oggetto risultante NewExpression è una raccolta vuota.
Se members
è null
, la Members proprietà dell'oggetto risultante NewExpression è una raccolta vuota. Se members
non null
è , deve avere lo stesso numero di elementi arguments
di e ogni elemento non deve essere null
. Ogni elemento di deve essere un PropertyInfoFieldInfo oggetto o MethodInfo che rappresenta un membro dell'istanza members
nel 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 di members
deve avere una Type proprietà che rappresenta un tipo assegnabile al tipo del membro rappresentato dall'elemento members
.
La Type proprietà dell'oggetto risultante NewExpression rappresenta il tipo dichiarante del costruttore rappresentato constructor
.