Expression.NewArrayBounds Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Создает NewArrayExpression, представляющее создание массива с указанным рангом.
Перегрузки
NewArrayBounds(Type, Expression[]) |
Создает NewArrayExpression, представляющее создание массива с указанным рангом. |
NewArrayBounds(Type, IEnumerable<Expression>) |
Создает NewArrayExpression, представляющее создание массива с указанным рангом. |
NewArrayBounds(Type, Expression[])
- Исходный код:
- NewArrayExpression.cs
- Исходный код:
- NewArrayExpression.cs
- Исходный код:
- NewArrayExpression.cs
Создает NewArrayExpression, представляющее создание массива с указанным рангом.
public:
static System::Linq::Expressions::NewArrayExpression ^ NewArrayBounds(Type ^ type, ... cli::array <System::Linq::Expressions::Expression ^> ^ bounds);
public static System.Linq.Expressions.NewArrayExpression NewArrayBounds (Type type, params System.Linq.Expressions.Expression[] bounds);
static member NewArrayBounds : Type * System.Linq.Expressions.Expression[] -> System.Linq.Expressions.NewArrayExpression
Public Shared Function NewArrayBounds (type As Type, ParamArray bounds As Expression()) As NewArrayExpression
Параметры
- bounds
- Expression[]
Массив объектов Expression для заполнения коллекции Expressions.
Возвращаемое значение
Выражение NewArrayExpression со свойством NodeType, равным NewArrayBounds, и свойством Expressions, для которого задано указанное значение.
Исключения
Параметр type
или bounds
имеет значение null
.
-или-
Элемент bounds
имеет значение null
.
Свойство Type элемента bounds
не представляет целочисленный тип.
Примеры
В следующем примере показано, как использовать NewArrayBounds метод для создания дерева выражений, представляющего создание массива строк с рангом 2.
// Create an expression tree that represents creating a
// two-dimensional array of type string with bounds [3,2].
System.Linq.Expressions.NewArrayExpression newArrayExpression =
System.Linq.Expressions.Expression.NewArrayBounds(
typeof(string),
System.Linq.Expressions.Expression.Constant(3),
System.Linq.Expressions.Expression.Constant(2));
// Output the string representation of the Expression.
Console.WriteLine(newArrayExpression.ToString());
// This code produces the following output:
//
// new System.String[,](3, 2)
' Create an expression tree that represents creating a string
' array with rank 2 and bounds (3,2).
Dim newArrayExpression As System.Linq.Expressions.NewArrayExpression = _
System.Linq.Expressions.Expression.NewArrayBounds( _
Type.GetType("System.String"), _
System.Linq.Expressions.Expression.Constant(3), _
System.Linq.Expressions.Expression.Constant(2))
' Output the string representation of the Expression.
Console.WriteLine(newArrayExpression.ToString())
' This code produces the following output:
'
' new System.String[,](3, 2)
Комментарии
Свойство Type результирующего NewArrayExpression объекта представляет тип массива, ранг которого равен длине bounds
, а тип элемента — type
.
Свойство Type каждого элемента должно bounds
представлять целочисленный тип.
Применяется к
NewArrayBounds(Type, IEnumerable<Expression>)
- Исходный код:
- NewArrayExpression.cs
- Исходный код:
- NewArrayExpression.cs
- Исходный код:
- NewArrayExpression.cs
Создает NewArrayExpression, представляющее создание массива с указанным рангом.
public:
static System::Linq::Expressions::NewArrayExpression ^ NewArrayBounds(Type ^ type, System::Collections::Generic::IEnumerable<System::Linq::Expressions::Expression ^> ^ bounds);
public static System.Linq.Expressions.NewArrayExpression NewArrayBounds (Type type, System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression> bounds);
static member NewArrayBounds : Type * seq<System.Linq.Expressions.Expression> -> System.Linq.Expressions.NewArrayExpression
Public Shared Function NewArrayBounds (type As Type, bounds As IEnumerable(Of Expression)) As NewArrayExpression
Параметры
- bounds
- IEnumerable<Expression>
IEnumerable<T>, содержащий все объекты Expression, используемые для заполнения коллекции Expressions.
Возвращаемое значение
Выражение NewArrayExpression со свойством NodeType, равным NewArrayBounds, и свойством Expressions, для которого задано указанное значение.
Исключения
Параметр type
или bounds
имеет значение null
.
-или-
Элемент bounds
имеет значение null
.
Свойство Type элемента bounds
не представляет целочисленный тип.
Примеры
В следующем примере показано, как использовать NewArrayBounds метод для создания дерева выражений, представляющего создание массива строк с рангом 2.
// Create an expression tree that represents creating a
// two-dimensional array of type string with bounds [3,2].
System.Linq.Expressions.NewArrayExpression newArrayExpression =
System.Linq.Expressions.Expression.NewArrayBounds(
typeof(string),
System.Linq.Expressions.Expression.Constant(3),
System.Linq.Expressions.Expression.Constant(2));
// Output the string representation of the Expression.
Console.WriteLine(newArrayExpression.ToString());
// This code produces the following output:
//
// new System.String[,](3, 2)
' Create an expression tree that represents creating a string
' array with rank 2 and bounds (3,2).
Dim newArrayExpression As System.Linq.Expressions.NewArrayExpression = _
System.Linq.Expressions.Expression.NewArrayBounds( _
Type.GetType("System.String"), _
System.Linq.Expressions.Expression.Constant(3), _
System.Linq.Expressions.Expression.Constant(2))
' Output the string representation of the Expression.
Console.WriteLine(newArrayExpression.ToString())
' This code produces the following output:
'
' new System.String[,](3, 2)
Комментарии
Свойство Type результирующего NewArrayExpression объекта представляет тип массива, ранг которого равен длине bounds
, а тип элемента — type
.
Свойство Type каждого элемента должно bounds
представлять целочисленный тип.