Bagikan melalui


Expression.NewArrayInit Metode

Definisi

NewArrayExpression Membuat yang mewakili pembuatan array satu dimensi dan menginisialisasinya dari daftar elemen.

Overload

Nama Deskripsi
NewArrayInit(Type, IEnumerable<Expression>)

NewArrayExpression Membuat yang mewakili pembuatan array satu dimensi dan menginisialisasinya dari daftar elemen.

NewArrayInit(Type, Expression[])

NewArrayExpression Membuat yang mewakili pembuatan array satu dimensi dan menginisialisasinya dari daftar elemen.

NewArrayInit(Type, IEnumerable<Expression>)

Sumber:
NewArrayExpression.cs
Sumber:
NewArrayExpression.cs
Sumber:
NewArrayExpression.cs
Sumber:
NewArrayExpression.cs
Sumber:
NewArrayExpression.cs

NewArrayExpression Membuat yang mewakili pembuatan array satu dimensi dan menginisialisasinya dari daftar elemen.

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);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Creating arrays at runtime requires dynamic code generation.")]
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
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Creating arrays at runtime requires dynamic code generation.")>]
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

Parameter

type
Type

Type yang mewakili jenis elemen array.

initializers
IEnumerable<Expression>

Yang IEnumerable<T> berisi Expression objek yang akan digunakan untuk mengisi Expressions koleksi.

Mengembalikan

NewArrayExpression Properti yang memiliki NodeType properti sama dengan NewArrayInit dan properti diatur Expressions ke nilai yang ditentukan.

Atribut

Pengecualian

type atau initializers adalah null.

-atau-

Elemen dari initializers adalah null.

Properti Type elemen mewakili initializers jenis yang tidak dapat ditetapkan ke jenis yang type diwakili.

Contoh

Contoh berikut menunjukkan cara menggunakan NewArrayInit metode untuk membuat pohon ekspresi yang mewakili pembuatan array string satu dimensi yang diinisialisasi dengan daftar ekspresi string.

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"}

Keterangan

Properti Type dari setiap elemen initializers harus mewakili jenis yang dapat ditetapkan ke jenis yang diwakili oleh type, mungkin setelah dikutip.

Nota

Elemen akan dikutip hanya jika type adalah Expression. Mengutip berarti elemen dibungkus dalam simpul Quote . Node yang dihasilkan adalah properti UnaryExpression yang Operand merupakan elemen dari initializers.

Properti Type dari hasil NewArrayExpression mewakili jenis array yang peringkatnya adalah 1 dan yang jenis elemennya adalah type.

Berlaku untuk

NewArrayInit(Type, Expression[])

Sumber:
NewArrayExpression.cs
Sumber:
NewArrayExpression.cs
Sumber:
NewArrayExpression.cs
Sumber:
NewArrayExpression.cs
Sumber:
NewArrayExpression.cs

NewArrayExpression Membuat yang mewakili pembuatan array satu dimensi dan menginisialisasinya dari daftar elemen.

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);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Creating arrays at runtime requires dynamic code generation.")]
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
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Creating arrays at runtime requires dynamic code generation.")>]
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

Parameter

type
Type

Type yang mewakili jenis elemen array.

initializers
Expression[]

Array Expression objek yang digunakan untuk mengisi Expressions koleksi.

Mengembalikan

NewArrayExpression Properti yang memiliki NodeType properti sama dengan NewArrayInit dan properti diatur Expressions ke nilai yang ditentukan.

Atribut

Pengecualian

type atau initializers adalah null.

-atau-

Elemen dari initializers adalah null.

Properti Type elemen dari initializers mewakili jenis yang tidak dapat ditetapkan ke jenis type.

Contoh

Contoh berikut menunjukkan cara menggunakan NewArrayInit metode untuk membuat pohon ekspresi yang mewakili pembuatan array string satu dimensi yang diinisialisasi dengan daftar ekspresi string.

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"}

Keterangan

Properti Type dari setiap elemen initializers harus mewakili jenis yang dapat ditetapkan ke jenis yang diwakili oleh type, mungkin setelah dikutip.

Nota

Elemen akan dikutip hanya jika type adalah Expression. Mengutip berarti elemen dibungkus dalam simpul Quote . Node yang dihasilkan adalah properti UnaryExpression yang Operand merupakan elemen dari initializers.

Properti Type dari hasil NewArrayExpression mewakili jenis array yang peringkatnya adalah 1 dan yang jenis elemennya adalah type.

Berlaku untuk