Expression.ArrayIndex Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Expression Membuat yang mewakili penerapan operator indeks array.
Overload
ArrayIndex(Expression, Expression[]) |
MethodCallExpression Membuat yang mewakili penerapan operator indeks array ke array multidimensi. |
ArrayIndex(Expression, IEnumerable<Expression>) |
MethodCallExpression Membuat yang mewakili penerapan operator indeks array ke array peringkat lebih dari satu. |
ArrayIndex(Expression, Expression) |
BinaryExpression Membuat yang mewakili penerapan operator indeks array ke array peringkat satu. |
ArrayIndex(Expression, Expression[])
- Sumber:
- MethodCallExpression.cs
- Sumber:
- MethodCallExpression.cs
- Sumber:
- MethodCallExpression.cs
MethodCallExpression Membuat yang mewakili penerapan operator indeks array ke array multidimensi.
public:
static System::Linq::Expressions::MethodCallExpression ^ ArrayIndex(System::Linq::Expressions::Expression ^ array, ... cli::array <System::Linq::Expressions::Expression ^> ^ indexes);
public static System.Linq.Expressions.MethodCallExpression ArrayIndex (System.Linq.Expressions.Expression array, params System.Linq.Expressions.Expression[] indexes);
static member ArrayIndex : System.Linq.Expressions.Expression * System.Linq.Expressions.Expression[] -> System.Linq.Expressions.MethodCallExpression
Public Shared Function ArrayIndex (array As Expression, ParamArray indexes As Expression()) As MethodCallExpression
Parameter
- array
- Expression
Array Expression instans - indeks untuk operasi indeks array.
- indexes
- Expression[]
Array Expression objek yang digunakan untuk mengisi Arguments koleksi.
Mengembalikan
MethodCallExpression yang memiliki NodeType properti yang sama dengan Call dan Object properti dan Arguments diatur ke nilai yang ditentukan.
Pengecualian
array
atau indexes
adalah null
.
array
. Jenis tidak mewakili jenis array.
-atau-
Peringkat array
. Jenis tidak cocok dengan jumlah elemen dalam indexes
.
-atau-
Properti Type dari satu atau beberapa elemen indexes
tidak mewakili Int32 jenis .
Contoh
Contoh berikut menunjukkan cara menggunakan ArrayIndex(Expression, Expression[]) metode untuk membuat MethodCallExpression yang mewakili pengindeksan ke dalam array dua dimensi.
string[,] gradeArray =
{ {"chemistry", "history", "mathematics"}, {"78", "61", "82"} };
System.Linq.Expressions.Expression arrayExpression =
System.Linq.Expressions.Expression.Constant(gradeArray);
// Create a MethodCallExpression that represents indexing
// into the two-dimensional array 'gradeArray' at (0, 2).
// Executing the expression would return "mathematics".
System.Linq.Expressions.MethodCallExpression methodCallExpression =
System.Linq.Expressions.Expression.ArrayIndex(
arrayExpression,
System.Linq.Expressions.Expression.Constant(0),
System.Linq.Expressions.Expression.Constant(2));
Console.WriteLine(methodCallExpression.ToString());
// This code produces the following output:
//
// value(System.String[,]).Get(0, 2)
Dim gradeArray(,) As String = _
{{"chemistry", "history", "mathematics"}, {"78", "61", "82"}}
Dim arrayExpression As System.Linq.Expressions.Expression = _
System.Linq.Expressions.Expression.Constant(gradeArray)
' Create a MethodCallExpression that represents indexing
' into the two-dimensional array 'gradeArray' at (0, 2).
' Executing the expression would return "mathematics".
Dim methodCallExpression As System.Linq.Expressions.MethodCallExpression = _
System.Linq.Expressions.Expression.ArrayIndex( _
arrayExpression, _
System.Linq.Expressions.Expression.Constant(0), _
System.Linq.Expressions.Expression.Constant(2))
Console.WriteLine(methodCallExpression.ToString())
' This code produces the following output:
'
' value(System.String[,]).Get(0, 2)
Keterangan
Setiap elemen indexes
harus sama Type dengan Int32. Properti Type dari array
harus mewakili jenis array yang peringkatnya cocok dengan jumlah elemen dalam indexes
.
Jika peringkat array
. Jenisnya adalah 1, metode ini mengembalikan BinaryExpression. Properti Left diatur ke array
dan Right properti diatur ke elemen tunggal .indexes
Properti Type dari BinaryExpression mewakili jenis elemen . array
Jenis.
Jika peringkat array
. Jenis lebih dari satu, metode ini mengembalikan MethodCallExpression. Properti Method diatur ke MethodInfo yang menjelaskan metode Get
instans publik pada jenis yang diwakili oleh Type properti .array
Berlaku untuk
ArrayIndex(Expression, IEnumerable<Expression>)
- Sumber:
- MethodCallExpression.cs
- Sumber:
- MethodCallExpression.cs
- Sumber:
- MethodCallExpression.cs
MethodCallExpression Membuat yang mewakili penerapan operator indeks array ke array peringkat lebih dari satu.
public:
static System::Linq::Expressions::MethodCallExpression ^ ArrayIndex(System::Linq::Expressions::Expression ^ array, System::Collections::Generic::IEnumerable<System::Linq::Expressions::Expression ^> ^ indexes);
public static System.Linq.Expressions.MethodCallExpression ArrayIndex (System.Linq.Expressions.Expression array, System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression> indexes);
static member ArrayIndex : System.Linq.Expressions.Expression * seq<System.Linq.Expressions.Expression> -> System.Linq.Expressions.MethodCallExpression
Public Shared Function ArrayIndex (array As Expression, indexes As IEnumerable(Of Expression)) As MethodCallExpression
Parameter
- array
- Expression
Untuk Expression mengatur properti sama Object dengan.
- indexes
- IEnumerable<Expression>
Yang IEnumerable<T> berisi Expression objek yang akan digunakan untuk mengisi Arguments koleksi.
Mengembalikan
MethodCallExpression yang memiliki NodeType properti yang sama dengan Call dan Object properti dan Arguments diatur ke nilai yang ditentukan.
Pengecualian
array
atau indexes
adalah null
.
array
. Jenis tidak mewakili jenis array.
-atau-
Peringkat array
. Jenis tidak cocok dengan jumlah elemen dalam indexes
.
-atau-
Properti Type dari satu atau beberapa elemen indexes
tidak mewakili Int32 jenis .
Contoh
Contoh berikut menunjukkan cara menggunakan ArrayIndex(Expression, Expression[]) metode untuk membuat MethodCallExpression yang mewakili pengindeksan ke dalam array dua dimensi.
string[,] gradeArray =
{ {"chemistry", "history", "mathematics"}, {"78", "61", "82"} };
System.Linq.Expressions.Expression arrayExpression =
System.Linq.Expressions.Expression.Constant(gradeArray);
// Create a MethodCallExpression that represents indexing
// into the two-dimensional array 'gradeArray' at (0, 2).
// Executing the expression would return "mathematics".
System.Linq.Expressions.MethodCallExpression methodCallExpression =
System.Linq.Expressions.Expression.ArrayIndex(
arrayExpression,
System.Linq.Expressions.Expression.Constant(0),
System.Linq.Expressions.Expression.Constant(2));
Console.WriteLine(methodCallExpression.ToString());
// This code produces the following output:
//
// value(System.String[,]).Get(0, 2)
Dim gradeArray(,) As String = _
{{"chemistry", "history", "mathematics"}, {"78", "61", "82"}}
Dim arrayExpression As System.Linq.Expressions.Expression = _
System.Linq.Expressions.Expression.Constant(gradeArray)
' Create a MethodCallExpression that represents indexing
' into the two-dimensional array 'gradeArray' at (0, 2).
' Executing the expression would return "mathematics".
Dim methodCallExpression As System.Linq.Expressions.MethodCallExpression = _
System.Linq.Expressions.Expression.ArrayIndex( _
arrayExpression, _
System.Linq.Expressions.Expression.Constant(0), _
System.Linq.Expressions.Expression.Constant(2))
Console.WriteLine(methodCallExpression.ToString())
' This code produces the following output:
'
' value(System.String[,]).Get(0, 2)
Keterangan
Setiap elemen indexes
harus sama Type dengan Int32. Properti Type dari array
harus mewakili jenis array yang peringkatnya cocok dengan jumlah elemen dalam indexes
.
Jika peringkat array
. Jenisnya adalah 1, metode ini mengembalikan BinaryExpression. Properti Left diatur ke array
dan Right properti diatur ke elemen tunggal .indexes
Properti Type dari BinaryExpression mewakili jenis elemen . array
Jenis.
Jika peringkat array
. Jenis lebih dari satu, metode ini mengembalikan MethodCallExpression. Properti Method diatur ke MethodInfo yang menjelaskan metode Get
instans publik pada jenis yang diwakili oleh Type properti .array
Berlaku untuk
ArrayIndex(Expression, Expression)
- Sumber:
- BinaryExpression.cs
- Sumber:
- BinaryExpression.cs
- Sumber:
- BinaryExpression.cs
BinaryExpression Membuat yang mewakili penerapan operator indeks array ke array peringkat satu.
public:
static System::Linq::Expressions::BinaryExpression ^ ArrayIndex(System::Linq::Expressions::Expression ^ array, System::Linq::Expressions::Expression ^ index);
public static System.Linq.Expressions.BinaryExpression ArrayIndex (System.Linq.Expressions.Expression array, System.Linq.Expressions.Expression index);
static member ArrayIndex : System.Linq.Expressions.Expression * System.Linq.Expressions.Expression -> System.Linq.Expressions.BinaryExpression
Public Shared Function ArrayIndex (array As Expression, index As Expression) As BinaryExpression
Parameter
- array
- Expression
A Expression untuk mengatur Left properti sama dengan.
- index
- Expression
A Expression untuk mengatur Right properti sama dengan.
Mengembalikan
BinaryExpression yang memiliki NodeType properti yang sama dengan ArrayIndex dan Left properti dan Right diatur ke nilai yang ditentukan.
Pengecualian
array
atau index
adalah null
.
array
. Jenis tidak mewakili jenis array.
-atau-
array
. Jenis mewakili jenis array yang peringkatnya bukan 1.
-atau-
index
. Tipe tidak mewakili Int32 tipe.
Keterangan
index
harus mewakili indeks jenis Int32.
Properti Method dari yang dihasilkan BinaryExpression adalah null
, dan keduanya IsLifted dan IsLiftedToNull diatur ke false
. Properti Type sama dengan jenis elemen . array
Jenis. Properti Conversion adalah null
.