Aracılığıyla paylaş


Expression.IfThen(Expression, Expression) Yöntem

Tanım

Bir ConditionalExpression deyimiyle koşullu bloğu temsil eden bir if oluşturur.

public:
 static System::Linq::Expressions::ConditionalExpression ^ IfThen(System::Linq::Expressions::Expression ^ test, System::Linq::Expressions::Expression ^ ifTrue);
public static System.Linq.Expressions.ConditionalExpression IfThen (System.Linq.Expressions.Expression test, System.Linq.Expressions.Expression ifTrue);
static member IfThen : System.Linq.Expressions.Expression * System.Linq.Expressions.Expression -> System.Linq.Expressions.ConditionalExpression
Public Shared Function IfThen (test As Expression, ifTrue As Expression) As ConditionalExpression

Parametreler

test
Expression

Expression özelliğinin Test değerine eşit olarak ayarlanması için.

ifTrue
Expression

Expression özelliğinin IfTrue değerine eşit olarak ayarlanması için.

Döndürülenler

ConditionalExpression özelliğine Conditional eşit NodeType olan ve Test, IfTrue, özellikleri belirtilen değerlere ayarlanmış. IfFalse özelliği varsayılan ifadeye ayarlanır ve bu yöntem tarafından döndürülen sonucun ConditionalExpression türü şeklindedirVoid.

Örnekler

Aşağıdaki kod örneği, koşullu bloğu temsil eden bir ifadenin nasıl oluşturulacağını gösterir.

// Add the following directive to the file:
// using System.Linq.Expressions;
bool test = true;

// This expression represents the conditional block.
Expression ifThenExpr = Expression.IfThen(
    Expression.Constant(test),
    Expression.Call(
        null,
        typeof(Console).GetMethod("WriteLine", new Type[] { typeof(String) }),
        Expression.Constant("The condition is true.")
       )
);

// The following statement first creates an expression tree,
// then compiles it, and then runs it.
Expression.Lambda<Action>(ifThenExpr).Compile()();

// This code example produces the following output:
//
// The condition is true.
' Add the following directive to the file:
' Imports System.Linq.Expressions

Dim test As Boolean = True

' This expression represents the conditional block.
Dim ifThenExpr As Expression = Expression.IfThen(
     Expression.Constant(test),
     Expression.Call(
         Nothing,
         GetType(Console).GetMethod("WriteLine", New Type() {GetType(String)}),
         Expression.Constant("The condition is true.")
     )
)

' The following statement first creates an expression tree,
' then compiles it, and then runs it.
Expression.Lambda(Of Action)(ifThenExpr).Compile()()

' This code example produces the following output:
'
' The condition is true.

Şunlara uygulanır