Expression.NewArrayInit 메서드

정의

1차원 배열을 만들고 요소 목록으로 초기화하는 동작을 나타내는 NewArrayExpression을 만듭니다.

오버로드

NewArrayInit(Type, IEnumerable<Expression>)

1차원 배열을 만들고 요소 목록으로 초기화하는 동작을 나타내는 NewArrayExpression을 만듭니다.

NewArrayInit(Type, Expression[])

1차원 배열을 만들고 요소 목록으로 초기화하는 동작을 나타내는 NewArrayExpression을 만듭니다.

NewArrayInit(Type, IEnumerable<Expression>)

Source:
NewArrayExpression.cs
Source:
NewArrayExpression.cs
Source:
NewArrayExpression.cs

1차원 배열을 만들고 요소 목록으로 초기화하는 동작을 나타내는 NewArrayExpression을 만듭니다.

public:
 static System::Linq::Expressions::NewArrayExpression ^ NewArrayInit(Type ^ type, System::Collections::Generic::IEnumerable<System::Linq::Expressions::Expression ^> ^ initializers);
public static System.Linq.Expressions.NewArrayExpression NewArrayInit (Type type, System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression> initializers);
static member NewArrayInit : Type * seq<System.Linq.Expressions.Expression> -> System.Linq.Expressions.NewArrayExpression
Public Shared Function NewArrayInit (type As Type, initializers As IEnumerable(Of Expression)) As NewArrayExpression

매개 변수

type
Type

배열의 요소 형식을 나타내는 Type입니다.

initializers
IEnumerable<Expression>

IEnumerable<T> 컬렉션을 채우는 데 사용할 Expression 개체가 포함된 Expressions입니다.

반환

NewArrayExpression 속성이 NodeType이고 NewArrayInit 속성이 지정된 값으로 설정된 Expressions입니다.

예외

type 또는 initializersnull인 경우

또는

initializers의 요소가 null입니다.

initializers에 있는 요소의 Type 속성이 나타내는 형식을 type이 나타내는 형식에 할당할 수 없는 경우

예제

다음 예제에서는 사용 하는 방법을 보여 줍니다.는 문자열 식 목록을 사용 하 여 NewArrayInit 초기화 되는 1 차원 문자열 배열을 만드는 나타내는 식 트리를 만드는 방법입니다.

List<System.Linq.Expressions.Expression> trees =
    new List<System.Linq.Expressions.Expression>()
        { System.Linq.Expressions.Expression.Constant("oak"),
          System.Linq.Expressions.Expression.Constant("fir"),
          System.Linq.Expressions.Expression.Constant("spruce"),
          System.Linq.Expressions.Expression.Constant("alder") };

// Create an expression tree that represents creating and
// initializing a one-dimensional array of type string.
System.Linq.Expressions.NewArrayExpression newArrayExpression =
    System.Linq.Expressions.Expression.NewArrayInit(typeof(string), trees);

// Output the string representation of the Expression.
Console.WriteLine(newArrayExpression.ToString());

// This code produces the following output:
//
// new [] {"oak", "fir", "spruce", "alder"}
Dim trees As New System.Collections.Generic.List(Of System.Linq.Expressions.Expression) _
        (New System.Linq.Expressions.Expression() _
         {System.Linq.Expressions.Expression.Constant("oak"), _
          System.Linq.Expressions.Expression.Constant("fir"), _
          System.Linq.Expressions.Expression.Constant("spruce"), _
          System.Linq.Expressions.Expression.Constant("alder")})

' Create an expression tree that represents creating and  
' initializing a one-dimensional array of type string.
Dim newArrayExpression As System.Linq.Expressions.NewArrayExpression = _
    System.Linq.Expressions.Expression.NewArrayInit(Type.GetType("System.String"), trees)

' Output the string representation of the Expression.
Console.WriteLine(newArrayExpression.ToString())

' This code produces the following output:
'
' new [] {"oak", "fir", "spruce", "alder"}

설명

의 각 요소 initializers 의 속성은 Type 나타내는 형식에 할당할 수 있는 형식을 나타내type야 합니다.

참고

가 인 경우에만 type 요소가 따옴표가 붙습니다 Expression. 따옴표는 요소가 노드에 래핑됨을 Quote 의미합니다. 결과 노드는 속성 OperandUnaryExpressioninitializers요소인 입니다.

결과 NewArrayExpression 의 속성은 Type 순위가 1이고 요소 형식이 인 배열 형식type을 나타냅니다.

적용 대상

NewArrayInit(Type, Expression[])

Source:
NewArrayExpression.cs
Source:
NewArrayExpression.cs
Source:
NewArrayExpression.cs

1차원 배열을 만들고 요소 목록으로 초기화하는 동작을 나타내는 NewArrayExpression을 만듭니다.

public:
 static System::Linq::Expressions::NewArrayExpression ^ NewArrayInit(Type ^ type, ... cli::array <System::Linq::Expressions::Expression ^> ^ initializers);
public static System.Linq.Expressions.NewArrayExpression NewArrayInit (Type type, params System.Linq.Expressions.Expression[] initializers);
static member NewArrayInit : Type * System.Linq.Expressions.Expression[] -> System.Linq.Expressions.NewArrayExpression
Public Shared Function NewArrayInit (type As Type, ParamArray initializers As Expression()) As NewArrayExpression

매개 변수

type
Type

배열의 요소 형식을 나타내는 Type입니다.

initializers
Expression[]

Expression 컬렉션을 채우는 데 사용할 Expressions 개체의 배열입니다.

반환

NewArrayExpression 속성이 NodeType이고 NewArrayInit 속성이 지정된 값으로 설정된 Expressions입니다.

예외

type 또는 initializersnull인 경우

또는

initializers의 요소가 null입니다.

initializers에 있는 요소의 Type 속성이 나타내는 형식을 type 형식에 할당할 수 없는 경우

예제

다음 예제에서는 사용 하는 방법을 보여 줍니다.는 문자열 식 목록을 사용 하 여 NewArrayInit 초기화 되는 1 차원 문자열 배열을 만드는 나타내는 식 트리를 만드는 방법입니다.

List<System.Linq.Expressions.Expression> trees =
    new List<System.Linq.Expressions.Expression>()
        { System.Linq.Expressions.Expression.Constant("oak"),
          System.Linq.Expressions.Expression.Constant("fir"),
          System.Linq.Expressions.Expression.Constant("spruce"),
          System.Linq.Expressions.Expression.Constant("alder") };

// Create an expression tree that represents creating and
// initializing a one-dimensional array of type string.
System.Linq.Expressions.NewArrayExpression newArrayExpression =
    System.Linq.Expressions.Expression.NewArrayInit(typeof(string), trees);

// Output the string representation of the Expression.
Console.WriteLine(newArrayExpression.ToString());

// This code produces the following output:
//
// new [] {"oak", "fir", "spruce", "alder"}
Dim trees As New System.Collections.Generic.List(Of System.Linq.Expressions.Expression) _
        (New System.Linq.Expressions.Expression() _
         {System.Linq.Expressions.Expression.Constant("oak"), _
          System.Linq.Expressions.Expression.Constant("fir"), _
          System.Linq.Expressions.Expression.Constant("spruce"), _
          System.Linq.Expressions.Expression.Constant("alder")})

' Create an expression tree that represents creating and  
' initializing a one-dimensional array of type string.
Dim newArrayExpression As System.Linq.Expressions.NewArrayExpression = _
    System.Linq.Expressions.Expression.NewArrayInit(Type.GetType("System.String"), trees)

' Output the string representation of the Expression.
Console.WriteLine(newArrayExpression.ToString())

' This code produces the following output:
'
' new [] {"oak", "fir", "spruce", "alder"}

설명

의 각 요소 initializers 의 속성은 Type 나타내는 형식에 할당할 수 있는 형식을 나타내type야 합니다.

참고

가 인 경우에만 type 요소가 따옴표가 붙습니다 Expression. 따옴표는 요소가 노드에 래핑됨을 Quote 의미합니다. 결과 노드는 속성 OperandUnaryExpressioninitializers요소인 입니다.

결과 NewArrayExpression 의 속성은 Type 순위가 1이고 요소 형식이 인 배열 형식type을 나타냅니다.

적용 대상