Expression.New メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
NewExpression を作成します。
オーバーロード
New(ConstructorInfo) |
引数を受け取らない指定したコンストラクターの呼び出しを表す NewExpression を作成します。 |
New(Type) |
指定した型のパラメーターなしのコンストラクターの呼び出しを表す NewExpression を作成します。 |
New(ConstructorInfo, IEnumerable<Expression>) |
指定した引数を持つ指定したコンストラクターの呼び出しを表す NewExpression を作成します。 |
New(ConstructorInfo, Expression[]) |
指定した引数を持つ指定したコンストラクターの呼び出しを表す NewExpression を作成します。 |
New(ConstructorInfo, IEnumerable<Expression>, IEnumerable<MemberInfo>) |
指定した引数を持つ指定したコンストラクターの呼び出しを表す NewExpression を作成します。 コンストラクターが初期化したフィールドにアクセスするメンバーが指定されます。 |
New(ConstructorInfo, IEnumerable<Expression>, MemberInfo[]) |
指定した引数を持つ指定したコンストラクターの呼び出しを表す NewExpression を作成します。 コンストラクターが初期化したフィールドにアクセスするメンバーが配列として指定されます。 |
New(ConstructorInfo)
- ソース:
- NewExpression.cs
- ソース:
- NewExpression.cs
- ソース:
- NewExpression.cs
引数を受け取らない指定したコンストラクターの呼び出しを表す NewExpression を作成します。
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
パラメーター
- constructor
- ConstructorInfo
ConstructorInfo プロパティを等しく設定する Constructor。
戻り値
NewExpression と等しい NodeType プロパティおよび指定した値に設定された New プロパティを含む Constructor。
例外
constructor
が null
です。
constructor
が表すコンストラクターには、少なくとも 1 つのパラメーターがあります。
注釈
Arguments結果NewExpressionの および Members プロパティは空のコレクションです。 プロパティは Type 、 で constructor
表されるコンストラクターの宣言型を表します。
適用対象
New(Type)
- ソース:
- NewExpression.cs
- ソース:
- NewExpression.cs
- ソース:
- NewExpression.cs
指定した型のパラメーターなしのコンストラクターの呼び出しを表す NewExpression を作成します。
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
パラメーター
戻り値
NewExpression と等しい NodeType プロパティと、指定された型のパラメーターなしのコンストラクターを表す New に設定された Constructor プロパティを含む ConstructorInfo。
例外
type
が null
です。
type
が表す型には、パラメーターなしのコンストラクターがありません。
例
次の例では、 メソッドを New(Type) 使用して、 パラメーターなしでコンストラクターを呼び出してディクショナリ オブジェクトの新しいインスタンスを構築することを表す を作成 NewExpression する方法を示します。
// 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()
注釈
パラメーターは type
、パラメーターのないコンストラクターを持つ型を表す必要があります。
Arguments結果NewExpressionの および Members プロパティは空のコレクションです。 プロパティは Type と type
同じです。
適用対象
New(ConstructorInfo, IEnumerable<Expression>)
- ソース:
- NewExpression.cs
- ソース:
- NewExpression.cs
- ソース:
- NewExpression.cs
指定した引数を持つ指定したコンストラクターの呼び出しを表す NewExpression を作成します。
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
パラメーター
- constructor
- ConstructorInfo
ConstructorInfo プロパティを等しく設定する Constructor。
- arguments
- IEnumerable<Expression>
IEnumerable<T> コレクションへの読み込みに使用する Expression オブジェクトを含む Arguments。
戻り値
NewExpression と等しい NodeType プロパティと、指定した値に設定された New プロパティおよび Constructor プロパティを含む Arguments。
例外
arguments
パラメーターに、constructor
が表すコンストラクターのパラメーターの数と同じ数の要素が格納されていません。
- または -
arguments
の要素の Type プロパティを、constructor
を表すコンストラクターの対応するパラメーターの型に割り当てることができません。
注釈
パラメーターには arguments
、 で constructor
表されるコンストラクターのパラメーターの数と同じ数の要素を含める必要があります。 が の場合arguments
は空と見なされArguments、結果NewExpressionの の プロパティは空のコレクションnull
になります。
結果NewExpressionの の プロパティはType、 でconstructor
表されるコンストラクターの宣言型を表します。 プロパティは Members 空のコレクションです。
適用対象
New(ConstructorInfo, Expression[])
- ソース:
- NewExpression.cs
- ソース:
- NewExpression.cs
- ソース:
- NewExpression.cs
指定した引数を持つ指定したコンストラクターの呼び出しを表す NewExpression を作成します。
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
パラメーター
- constructor
- ConstructorInfo
ConstructorInfo プロパティを等しく設定する Constructor。
- arguments
- Expression[]
Expression コレクションへの読み込みに使用する Arguments オブジェクトの配列。
戻り値
NewExpression と等しい NodeType プロパティと、指定した値に設定された New プロパティおよび Constructor プロパティを含む Arguments。
例外
arguments
の長さが、constructor
を表すコンストラクターのパラメーターの数と一致しません。
- または -
arguments
の要素の Type プロパティを、constructor
を表すコンストラクターの対応するパラメーターの型に割り当てることができません。
注釈
パラメーターには arguments
、 で constructor
表されるコンストラクターのパラメーターの数と同じ数の要素を含める必要があります。 が の場合arguments
は空と見なされArguments、結果NewExpressionの の プロパティは空のコレクションnull
になります。
結果NewExpressionの の プロパティはType、 でconstructor
表されるコンストラクターの宣言型を表します。 プロパティは Members 空のコレクションです。
適用対象
New(ConstructorInfo, IEnumerable<Expression>, IEnumerable<MemberInfo>)
- ソース:
- NewExpression.cs
- ソース:
- NewExpression.cs
- ソース:
- NewExpression.cs
指定した引数を持つ指定したコンストラクターの呼び出しを表す NewExpression を作成します。 コンストラクターが初期化したフィールドにアクセスするメンバーが指定されます。
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
パラメーター
- constructor
- ConstructorInfo
ConstructorInfo プロパティを等しく設定する Constructor。
- arguments
- IEnumerable<Expression>
IEnumerable<T> コレクションへの読み込みに使用する Expression オブジェクトを含む Arguments。
- members
- IEnumerable<MemberInfo>
IEnumerable<T> コレクションへの読み込みに使用する MemberInfo オブジェクトを含む Members。
戻り値
NewExpression と等しい NodeType プロパティと、指定した値に設定された New、Constructor、および Arguments の各プロパティを含む Members。
例外
constructor
は null
です。
- または -
arguments
の要素は null
です。
- または -
members
の要素は null
です。
arguments
パラメーターに、constructor
が表すコンストラクターのパラメーターの数と同じ数の要素が格納されていません。
- または -
arguments
の要素の Type プロパティを、constructor
を表すコンストラクターの対応するパラメーターの型に割り当てることができません。
- または -
members
パラメーターに、arguments
と同じ数の要素がありません。
- または -
arguments
の要素に、members
の対応する要素により表されるメンバーの型に代入可能な型を表す Type プロパティがあります。
注釈
パラメーターには arguments
、 で constructor
表されるコンストラクターのパラメーターの数と同じ数の要素を含める必要があります。 が の場合arguments
は空と見なされArguments、結果NewExpressionの の プロパティは空のコレクションnull
になります。
が のnull
場合members
、Members結果NewExpressionの のプロパティは空のコレクションです。 が でないnull
場合members
は、 と同じ数の要素arguments
を持ち、各要素を にnull
することはできません。 のmembers
各要素は、 PropertyInfoFieldInfo である必要があります。またはMethodInfo、 によってconstructor
表されるコンストラクターの宣言型のインスタンス メンバーを表します。 プロパティを表す場合、プロパティにはアクセサーが必要です get
。 のmembers
各要素の arguments
対応する 要素には、Type要素が表すメンバーの型に割り当て可能な型を表す プロパティがmembers
必要です。
結果NewExpressionの の プロパティはType、 を表すコンストラクターの宣言型をconstructor
表します。
適用対象
New(ConstructorInfo, IEnumerable<Expression>, MemberInfo[])
- ソース:
- NewExpression.cs
- ソース:
- NewExpression.cs
- ソース:
- NewExpression.cs
指定した引数を持つ指定したコンストラクターの呼び出しを表す NewExpression を作成します。 コンストラクターが初期化したフィールドにアクセスするメンバーが配列として指定されます。
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
パラメーター
- constructor
- ConstructorInfo
ConstructorInfo プロパティを等しく設定する Constructor。
- arguments
- IEnumerable<Expression>
IEnumerable<T> コレクションへの読み込みに使用する Expression オブジェクトを含む Arguments。
- members
- MemberInfo[]
MemberInfo コレクションへの読み込みに使用する Members オブジェクトの配列。
戻り値
NewExpression と等しい NodeType プロパティと、指定した値に設定された New、Constructor、および Arguments の各プロパティを含む Members。
例外
constructor
は null
です。
- または -
arguments
の要素は null
です。
- または -
members
の要素は null
です。
arguments
パラメーターに、constructor
が表すコンストラクターのパラメーターの数と同じ数の要素が格納されていません。
- または -
arguments
の要素の Type プロパティを、constructor
を表すコンストラクターの対応するパラメーターの型に割り当てることができません。
- または -
members
パラメーターに、arguments
と同じ数の要素がありません。
- または -
arguments
の要素に、members
の対応する要素により表されるメンバーの型に代入可能な型を表す Type プロパティがあります。
注釈
パラメーターには arguments
、 で constructor
表されるコンストラクターのパラメーターの数と同じ数の要素を含める必要があります。 が の場合arguments
は空と見なされArguments、結果NewExpressionの の プロパティは空のコレクションnull
になります。
が のnull
場合members
、Members結果NewExpressionの のプロパティは空のコレクションです。 が でないnull
場合members
は、 と同じ数の要素arguments
を持ち、各要素を にnull
することはできません。 のmembers
各要素は、 PropertyInfoFieldInfo である必要があります。またはMethodInfo、 によってconstructor
表されるコンストラクターの宣言型のインスタンス メンバーを表します。 プロパティを表す場合、プロパティは関連付けられたフィールドの値を取得できる必要があります。 のmembers
各要素の arguments
対応する 要素には、Type要素が表すメンバーの型に割り当て可能な型を表す プロパティがmembers
必要です。
結果NewExpressionの の プロパティはType、 を表すコンストラクターの宣言型をconstructor
表します。
適用対象
.NET