Aracılığıyla paylaş


Expression.Goto Yöntem

Tanım

"go to" deyimini temsil eden bir GotoExpression oluşturur.

Aşırı Yüklemeler

Goto(LabelTarget, Expression, Type)

Belirtilen türe sahip bir "go to" deyimini temsil eden bir GotoExpression oluşturur. Atlama sırasında etikete geçirilen değer belirtilebilir.

Goto(LabelTarget, Type)

Belirtilen türe sahip bir "go to" deyimini temsil eden bir GotoExpression oluşturur.

Goto(LabelTarget)

"go to" deyimini temsil eden bir GotoExpression oluşturur.

Goto(LabelTarget, Expression)

"go to" deyimini temsil eden bir GotoExpression oluşturur. Atlama sırasında etikete geçirilen değer belirtilebilir.

Goto(LabelTarget, Expression, Type)

Kaynak:
GotoExpression.cs
Kaynak:
GotoExpression.cs
Kaynak:
GotoExpression.cs

Belirtilen türe sahip bir "go to" deyimini temsil eden bir GotoExpression oluşturur. Atlama sırasında etikete geçirilen değer belirtilebilir.

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

Parametreler

target
LabelTarget

Atlayacakları LabelTargetGotoExpression şey.

value
Expression

Atlama sırasında ilişkili etikete geçirilecek değer.

type
Type

Özelliğinin Type değerine eşit olarak ayarlanması için birType.

Döndürülenler

GotoExpression Goto'ya eşit olan Kind bir, Target özelliği olarak targetayarlanır, Type özelliği olarak ayarlanır typeve value atlanması sırasında hedef etikete geçirilir.

Şunlara uygulanır

Goto(LabelTarget, Type)

Kaynak:
GotoExpression.cs
Kaynak:
GotoExpression.cs
Kaynak:
GotoExpression.cs

Belirtilen türe sahip bir "go to" deyimini temsil eden bir GotoExpression oluşturur.

public:
 static System::Linq::Expressions::GotoExpression ^ Goto(System::Linq::Expressions::LabelTarget ^ target, Type ^ type);
public static System.Linq.Expressions.GotoExpression Goto (System.Linq.Expressions.LabelTarget target, Type type);
static member Goto : System.Linq.Expressions.LabelTarget * Type -> System.Linq.Expressions.GotoExpression
Public Shared Function Goto (target As LabelTarget, type As Type) As GotoExpression

Parametreler

target
LabelTarget

Atlayacakları LabelTargetGotoExpression şey.

type
Type

Özelliğinin Type değerine eşit olarak ayarlanması için birType.

Döndürülenler

GotoExpression Goto'ya eşit olan Kind bir, Target özelliği belirtilen değere ayarlanmış, Type özellik olarak ayarlanmış typeve atlayarak hedef etikete geçirilecek bir null değer.

Şunlara uygulanır

Goto(LabelTarget)

Kaynak:
GotoExpression.cs
Kaynak:
GotoExpression.cs
Kaynak:
GotoExpression.cs

"go to" deyimini temsil eden bir GotoExpression oluşturur.

public:
 static System::Linq::Expressions::GotoExpression ^ Goto(System::Linq::Expressions::LabelTarget ^ target);
public static System.Linq.Expressions.GotoExpression Goto (System.Linq.Expressions.LabelTarget target);
static member Goto : System.Linq.Expressions.LabelTarget -> System.Linq.Expressions.GotoExpression
Public Shared Function Goto (target As LabelTarget) As GotoExpression

Parametreler

target
LabelTarget

Atlayacakları LabelTargetGotoExpression şey.

Döndürülenler

GotoExpression Goto'ya eşit olanKind, Target özelliği belirtilen değere ayarlanmış ve atlanması sırasında hedef etikete geçirilecek bir null değer.

Örnekler

Aşağıdaki örnekte, nesne içeren GotoExpression bir ifadenin nasıl oluşturulacağı gösterilmektedir.

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

// A label expression of the void type that is the target for the GotoExpression.
LabelTarget returnTarget = Expression.Label();

// This block contains a GotoExpression.
// It transfers execution to a label expression that is initialized with the same LabelTarget as the GotoExpression.
// The types of the GotoExpression, label expression, and LabelTarget must match.
BlockExpression blockExpr =
    Expression.Block(
        Expression.Call(typeof(Console).GetMethod("WriteLine", new Type[] { typeof(string) }), Expression.Constant("GoTo")),
        Expression.Goto(returnTarget),
        Expression.Call(typeof(Console).GetMethod("WriteLine", new Type[] { typeof(string) }), Expression.Constant("Other Work")),
        Expression.Label(returnTarget)
    );

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

// This code example produces the following output:
//
// GoTo

// "Other Work" is not printed because
// the GoTo expression transfers execution from Expression.GoTo(returnTarget)
// to Expression.Label(returnTarget).
' Add the following directive to your file:
' Imports System.Linq.Expressions  

' A label expression of the void type that is the target for the GoToExpression.
Dim returnTarget As LabelTarget = Expression.Label()

' This block contains a GotoExpression.
' It transfers execution to a label expression that is initialized with the same LabelTarget as the GotoExpression.
' The types of the GotoExpression, label expression, and LabelTarget must match.
Dim blockExpr As BlockExpression =
      Expression.Block(
          Expression.Call(GetType(Console).GetMethod("WriteLine", New Type() {GetType(String)}), Expression.Constant("GoTo")),
          Expression.Goto(returnTarget),
          Expression.Call(GetType(Console).GetMethod("WriteLine", New Type() {GetType(String)}), Expression.Constant("Other Work")),
          Expression.Label(returnTarget)
      )

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

' This code example produces the following output:
'
' GoTo

' "Other Work" is not printed because 
' the Return expression transfers execution from Expression.GoTo(returnTarget)
' to Expression.Label(returnTarget).

Şunlara uygulanır

Goto(LabelTarget, Expression)

Kaynak:
GotoExpression.cs
Kaynak:
GotoExpression.cs
Kaynak:
GotoExpression.cs

"go to" deyimini temsil eden bir GotoExpression oluşturur. Atlama sırasında etikete geçirilen değer belirtilebilir.

public:
 static System::Linq::Expressions::GotoExpression ^ Goto(System::Linq::Expressions::LabelTarget ^ target, System::Linq::Expressions::Expression ^ value);
public static System.Linq.Expressions.GotoExpression Goto (System.Linq.Expressions.LabelTarget target, System.Linq.Expressions.Expression value);
public static System.Linq.Expressions.GotoExpression Goto (System.Linq.Expressions.LabelTarget target, System.Linq.Expressions.Expression? value);
static member Goto : System.Linq.Expressions.LabelTarget * System.Linq.Expressions.Expression -> System.Linq.Expressions.GotoExpression
Public Shared Function Goto (target As LabelTarget, value As Expression) As GotoExpression

Parametreler

target
LabelTarget

Atlayacakları LabelTargetGotoExpression şey.

value
Expression

Atlama sırasında ilişkili etikete geçirilecek değer.

Döndürülenler

GotoExpression Goto'ya eşit olan Kind bir, Target özelliği olarak ayarlanır targetve value atlama sırasında hedef etikete geçirilir.

Şunlara uygulanır