Expression.New Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Crée un NewExpression.
Surcharges
| Nom | Description |
|---|---|
| New(ConstructorInfo) |
Crée un NewExpression qui représente l’appel du constructeur spécifié qui ne prend aucun argument. |
| New(Type) |
Crée un NewExpression qui représente l’appel du constructeur sans paramètre du type spécifié. |
| New(ConstructorInfo, IEnumerable<Expression>) |
Crée un NewExpression qui représente l’appel du constructeur spécifié avec les arguments spécifiés. |
| New(ConstructorInfo, Expression[]) |
Crée un NewExpression qui représente l’appel du constructeur spécifié avec les arguments spécifiés. |
| New(ConstructorInfo, IEnumerable<Expression>, IEnumerable<MemberInfo>) |
Crée un NewExpression qui représente l’appel du constructeur spécifié avec les arguments spécifiés. Les membres qui accèdent aux champs initialisés du constructeur sont spécifiés. |
| New(ConstructorInfo, IEnumerable<Expression>, MemberInfo[]) |
Crée un NewExpression qui représente l’appel du constructeur spécifié avec les arguments spécifiés. Les membres qui accèdent aux champs initialisés du constructeur sont spécifiés en tant que tableau. |
New(ConstructorInfo)
- Source:
- NewExpression.cs
- Source:
- NewExpression.cs
- Source:
- NewExpression.cs
- Source:
- NewExpression.cs
- Source:
- NewExpression.cs
Crée un NewExpression qui représente l’appel du constructeur spécifié qui ne prend aucun argument.
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
Paramètres
- constructor
- ConstructorInfo
Pour ConstructorInfo définir la Constructor propriété égale à.
Retours
Qui NewExpression a la NodeType propriété égale à New et la Constructor propriété définie sur la valeur spécifiée.
Exceptions
constructor a la valeur null.
Le constructeur qui constructor représente a au moins un paramètre.
Remarques
Les Arguments propriétés et Members les propriétés des résultats NewExpression sont des collections vides. La Type propriété représente le type déclarant du constructeur représenté par constructor.
S’applique à
New(Type)
- Source:
- NewExpression.cs
- Source:
- NewExpression.cs
- Source:
- NewExpression.cs
- Source:
- NewExpression.cs
- Source:
- NewExpression.cs
Crée un NewExpression qui représente l’appel du constructeur sans paramètre du type spécifié.
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
Paramètres
Retours
Qui NewExpression a la NodeType propriété égale à New et la Constructor propriété définie sur le ConstructorInfo constructeur qui représente le constructeur sans paramètres pour le type spécifié.
Exceptions
type a la valeur null.
Le type qui type représente n’a pas de constructeur sans paramètres.
Exemples
L’exemple suivant montre comment utiliser la New(Type) méthode pour créer un qui représente la construction d’une NewExpression nouvelle instance d’un objet dictionnaire en appelant le constructeur sans paramètres.
// 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()
Remarques
Le type paramètre doit représenter un type qui a un constructeur sans paramètres.
Les Arguments propriétés et Members les propriétés des résultats NewExpression sont des collections vides. La Type propriété est égale à type.
S’applique à
New(ConstructorInfo, IEnumerable<Expression>)
- Source:
- NewExpression.cs
- Source:
- NewExpression.cs
- Source:
- NewExpression.cs
- Source:
- NewExpression.cs
- Source:
- NewExpression.cs
Crée un NewExpression qui représente l’appel du constructeur spécifié avec les arguments spécifiés.
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
Paramètres
- constructor
- ConstructorInfo
Pour ConstructorInfo définir la Constructor propriété égale à.
- arguments
- IEnumerable<Expression>
Qui IEnumerable<T> contient des Expression objets à utiliser pour remplir la Arguments collection.
Retours
Qui NewExpression a la NodeType propriété égale à New et les ConstructorArguments propriétés définies sur les valeurs spécifiées.
Exceptions
Le arguments paramètre ne contient pas le même nombre d’éléments que le nombre de paramètres du constructeur qui constructor représente.
- ou -
La Type propriété d’un élément de arguments n’est pas assignable au type du paramètre correspondant du constructeur qui constructor représente.
Remarques
Le arguments paramètre doit contenir le même nombre d’éléments que le nombre de paramètres du constructeur représenté par constructor. Si arguments c’est nullle cas, il est considéré comme vide et la Arguments propriété du résultat NewExpression est une collection vide.
La Type propriété du résultat NewExpression représente le type déclarant du constructeur représenté par constructor. La Members propriété est une collection vide.
S’applique à
New(ConstructorInfo, Expression[])
- Source:
- NewExpression.cs
- Source:
- NewExpression.cs
- Source:
- NewExpression.cs
- Source:
- NewExpression.cs
- Source:
- NewExpression.cs
Crée un NewExpression qui représente l’appel du constructeur spécifié avec les arguments spécifiés.
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
Paramètres
- constructor
- ConstructorInfo
Pour ConstructorInfo définir la Constructor propriété égale à.
- arguments
- Expression[]
Tableau d’objets Expression à utiliser pour remplir la Arguments collection.
Retours
Qui NewExpression a la NodeType propriété égale à New et les ConstructorArguments propriétés définies sur les valeurs spécifiées.
Exceptions
La longueur de arguments ce paramètre correspond au nombre de paramètres du constructeur qui constructor représente.
- ou -
La Type propriété d’un élément de arguments n’est pas assignable au type du paramètre correspondant du constructeur qui constructor représente.
Remarques
Le arguments paramètre doit contenir le même nombre d’éléments que le nombre de paramètres du constructeur représenté par constructor. Si arguments c’est nullle cas, il est considéré comme vide et la Arguments propriété du résultat NewExpression est une collection vide.
La Type propriété du résultat NewExpression représente le type déclarant du constructeur représenté par constructor. La Members propriété est une collection vide.
S’applique à
New(ConstructorInfo, IEnumerable<Expression>, IEnumerable<MemberInfo>)
- Source:
- NewExpression.cs
- Source:
- NewExpression.cs
- Source:
- NewExpression.cs
- Source:
- NewExpression.cs
- Source:
- NewExpression.cs
Crée un NewExpression qui représente l’appel du constructeur spécifié avec les arguments spécifiés. Les membres qui accèdent aux champs initialisés du constructeur sont spécifiés.
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);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("The Property metadata or other accessor may be trimmed.")]
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
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("The Property metadata or other accessor may be trimmed.")>]
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
Paramètres
- constructor
- ConstructorInfo
Pour ConstructorInfo définir la Constructor propriété égale à.
- arguments
- IEnumerable<Expression>
Qui IEnumerable<T> contient des Expression objets à utiliser pour remplir la Arguments collection.
- members
- IEnumerable<MemberInfo>
Qui IEnumerable<T> contient des MemberInfo objets à utiliser pour remplir la Members collection.
Retours
Qui NewExpression a la NodeType propriété égale à New et les ConstructorArgumentsMembers propriétés définies sur les valeurs spécifiées.
- Attributs
Exceptions
constructor a la valeur null.
- ou -
Un élément de arguments .null
- ou -
Un élément de members .null
Le arguments paramètre ne contient pas le même nombre d’éléments que le nombre de paramètres du constructeur qui constructor représente.
- ou -
La Type propriété d’un élément de arguments n’est pas assignable au type du paramètre correspondant du constructeur qui constructor représente.
- ou -
Le members paramètre n’a pas le même nombre d’éléments que arguments.
- ou -
Un élément d’une argumentsType propriété qui représente un type qui n’est pas assignable au type du membre représenté par l’élément correspondant de members.
Remarques
Le arguments paramètre doit contenir le même nombre d’éléments que le nombre de paramètres du constructeur représenté par constructor. Si arguments c’est nullle cas, il est considéré comme vide et la Arguments propriété du résultat NewExpression est une collection vide.
Si members c’est nullle cas, la Members propriété du résultat NewExpression est une collection vide. Si members ce n’est pas nullle cas, il doit avoir le même nombre d’éléments que arguments et chaque élément ne doit pas être null. Chaque élément de members doit être un PropertyInfoou FieldInfoMethodInfo qui représente un membre d’instance sur le type déclarant du constructeur représenté par constructor. S’il représente une propriété, la propriété doit avoir un get accesseur. L’élément correspondant de arguments chaque élément members doit avoir une Type propriété qui représente un type pouvant être affecté au type du membre que l’élément members représente.
La Type propriété du résultat NewExpression représente le type déclarant du constructeur qui constructor représente.
S’applique à
New(ConstructorInfo, IEnumerable<Expression>, MemberInfo[])
- Source:
- NewExpression.cs
- Source:
- NewExpression.cs
- Source:
- NewExpression.cs
- Source:
- NewExpression.cs
- Source:
- NewExpression.cs
Crée un NewExpression qui représente l’appel du constructeur spécifié avec les arguments spécifiés. Les membres qui accèdent aux champs initialisés du constructeur sont spécifiés en tant que tableau.
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);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("The Property metadata or other accessor may be trimmed.")]
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
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("The Property metadata or other accessor may be trimmed.")>]
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
Paramètres
- constructor
- ConstructorInfo
Pour ConstructorInfo définir la Constructor propriété égale à.
- arguments
- IEnumerable<Expression>
Qui IEnumerable<T> contient des Expression objets à utiliser pour remplir la Arguments collection.
- members
- MemberInfo[]
Tableau d’objets MemberInfo à utiliser pour remplir la Members collection.
Retours
Qui NewExpression a la NodeType propriété égale à New et les ConstructorArgumentsMembers propriétés définies sur les valeurs spécifiées.
- Attributs
Exceptions
constructor a la valeur null.
- ou -
Un élément de arguments .null
- ou -
Un élément de members .null
Le arguments paramètre ne contient pas le même nombre d’éléments que le nombre de paramètres du constructeur qui constructor représente.
- ou -
La Type propriété d’un élément de arguments n’est pas assignable au type du paramètre correspondant du constructeur qui constructor représente.
- ou -
Le members paramètre n’a pas le même nombre d’éléments que arguments.
- ou -
Un élément d’une argumentsType propriété qui représente un type qui n’est pas assignable au type du membre représenté par l’élément correspondant de members.
Remarques
Le arguments paramètre doit contenir le même nombre d’éléments que le nombre de paramètres du constructeur représenté par constructor. Si arguments c’est nullle cas, il est considéré comme vide et la Arguments propriété du résultat NewExpression est une collection vide.
Si members c’est nullle cas, la Members propriété du résultat NewExpression est une collection vide. Si members ce n’est pas nullle cas, il doit avoir le même nombre d’éléments que arguments et chaque élément ne doit pas être null. Chaque élément de members doit être un PropertyInfoou FieldInfoMethodInfo qui représente un membre d’instance sur le type déclarant du constructeur représenté par constructor. S’il représente une propriété, la propriété doit être en mesure de récupérer la valeur du champ associé. L’élément correspondant de arguments chaque élément members doit avoir une Type propriété qui représente un type pouvant être affecté au type du membre que l’élément members représente.
La Type propriété du résultat NewExpression représente le type déclarant du constructeur qui constructor représente.