Поделиться через


Expression.NewArrayBounds Метод

Определение

NewArrayExpression Создает объект, представляющий создание массива с указанным рангом.

Перегрузки

Имя Описание
NewArrayBounds(Type, Expression[])

NewArrayExpression Создает объект, представляющий создание массива с указанным рангом.

NewArrayBounds(Type, IEnumerable<Expression>)

NewArrayExpression Создает объект, представляющий создание массива с указанным рангом.

NewArrayBounds(Type, Expression[])

Исходный код:
NewArrayExpression.cs
Исходный код:
NewArrayExpression.cs
Исходный код:
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);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Creating arrays at runtime requires dynamic code generation.")]
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
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Creating arrays at runtime requires dynamic code generation.")>]
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

Параметры

type
Type

Объект, Type представляющий тип элемента массива.

bounds
Expression[]

Массив объектов, используемых Expression для заполнения Expressions коллекции.

Возвращаемое значение

Значение NewArrayExpression , равное NodeType свойству NewArrayBounds и Expressions свойству, заданному указанному значению.

Атрибуты

Исключения

type или bounds есть null.

–или–

Элемент bounds is 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.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);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Creating arrays at runtime requires dynamic code generation.")]
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
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Creating arrays at runtime requires dynamic code generation.")>]
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

Параметры

type
Type

Объект, Type представляющий тип элемента массива.

bounds
IEnumerable<Expression>

Объект IEnumerable<T> , содержащий Expression объекты, используемые для заполнения Expressions коллекции.

Возвращаемое значение

Значение NewArrayExpression , равное NodeType свойству NewArrayBounds и Expressions свойству, заданному указанному значению.

Атрибуты

Исключения

type или bounds есть null.

–или–

Элемент bounds is 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 должно представлять целочисленный тип.

Применяется к