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


Expression.Throw Метод

Определение

Создает объект UnaryExpression, представляющий создание исключения.

Перегрузки

Throw(Expression)

Создает объект UnaryExpression, представляющий создание исключения.

Throw(Expression, Type)

Создает выражение UnaryExpression, представляющее создание исключения с заданным типом.

Throw(Expression)

Исходный код:
UnaryExpression.cs
Исходный код:
UnaryExpression.cs
Исходный код:
UnaryExpression.cs

Создает объект UnaryExpression, представляющий создание исключения.

public:
 static System::Linq::Expressions::UnaryExpression ^ Throw(System::Linq::Expressions::Expression ^ value);
public static System.Linq.Expressions.UnaryExpression Throw (System.Linq.Expressions.Expression value);
public static System.Linq.Expressions.UnaryExpression Throw (System.Linq.Expressions.Expression? value);
static member Throw : System.Linq.Expressions.Expression -> System.Linq.Expressions.UnaryExpression
Public Shared Function Throw (value As Expression) As UnaryExpression

Параметры

value
Expression

Объект Expression.

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

Выражение UnaryExpression, представляющее исключение.

Примеры

В следующем примере показано, как создать объект, использующий TryExpressionThrow метод .

// Add the following directive to the file:
// using System.Linq.Expressions;

// A TryExpression object that has a Catch statement.
// The return types of the Try block and all Catch blocks must be the same.
TryExpression tryCatchExpr =
    Expression.TryCatch(
        Expression.Block(
            Expression.Throw(Expression.Constant(new DivideByZeroException())),
            Expression.Constant("Try block")
        ),
        Expression.Catch(
            typeof(DivideByZeroException),
            Expression.Constant("Catch block")
        )
    );

// The following statement first creates an expression tree,
// then compiles it, and then runs it.
// If the exception is caught,
// the result of the TryExpression is the last statement
// of the corresponding Catch statement.
Console.WriteLine(Expression.Lambda<Func<string>>(tryCatchExpr).Compile()());

// This code example produces the following output:
//
// Catch block
' Add the following directive to the file:
' Imports System.Linq.Expressions 

' A TryExpression object that has a Catch statement.
' The return types of the Try block and all Catch blocks must be the same.
Dim tryCatchExpr As TryExpression =
       Expression.TryCatch(
           Expression.Block(
               Expression.Throw(Expression.Constant(New DivideByZeroException())),
               Expression.Constant("Try block")
           ),
           Expression.Catch(
               GetType(DivideByZeroException),
               Expression.Constant("Catch block")
           )
       )

' The following statement first creates an expression tree,
' then compiles it, and then runs it.
' If the exception is caught, 
' the result of the TryExpression is the last statement 
' of the corresponding Catch statement.
Console.WriteLine(Expression.Lambda(Of Func(Of String))(tryCatchExpr).Compile()())

' This code example produces the following output:
'
' Catch block

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

Throw(Expression, Type)

Исходный код:
UnaryExpression.cs
Исходный код:
UnaryExpression.cs
Исходный код:
UnaryExpression.cs

Создает выражение UnaryExpression, представляющее создание исключения с заданным типом.

public:
 static System::Linq::Expressions::UnaryExpression ^ Throw(System::Linq::Expressions::Expression ^ value, Type ^ type);
public static System.Linq.Expressions.UnaryExpression Throw (System.Linq.Expressions.Expression value, Type type);
public static System.Linq.Expressions.UnaryExpression Throw (System.Linq.Expressions.Expression? value, Type type);
static member Throw : System.Linq.Expressions.Expression * Type -> System.Linq.Expressions.UnaryExpression
Public Shared Function Throw (value As Expression, type As Type) As UnaryExpression

Параметры

value
Expression

Объект Expression.

type
Type

Новый тип Type выражения.

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

Выражение UnaryExpression, представляющее исключение.

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