Expression.Add Yöntem

Tanım

Taşma denetimi olmayan bir aritmetik toplama işlemini temsil eden bir BinaryExpression oluşturur.

Aşırı Yüklemeler

Name Description
Add(Expression, Expression)

Taşma denetimi olmayan bir aritmetik toplama işlemini temsil eden bir BinaryExpression oluşturur.

Add(Expression, Expression, MethodInfo)

Taşma denetimi olmayan bir aritmetik toplama işlemini temsil eden bir BinaryExpression oluşturur. Uygulayan yöntem belirtilebilir.

Add(Expression, Expression)

Kaynak:
BinaryExpression.cs
Kaynak:
BinaryExpression.cs
Kaynak:
BinaryExpression.cs
Kaynak:
BinaryExpression.cs
Kaynak:
BinaryExpression.cs

Taşma denetimi olmayan bir aritmetik toplama işlemini temsil eden bir BinaryExpression oluşturur.

public:
 static System::Linq::Expressions::BinaryExpression ^ Add(System::Linq::Expressions::Expression ^ left, System::Linq::Expressions::Expression ^ right);
public static System.Linq.Expressions.BinaryExpression Add(System.Linq.Expressions.Expression left, System.Linq.Expressions.Expression right);
static member Add : System.Linq.Expressions.Expression * System.Linq.Expressions.Expression -> System.Linq.Expressions.BinaryExpression
Public Shared Function Add (left As Expression, right As Expression) As BinaryExpression

Parametreler

left
Expression

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

right
Expression

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

Döndürülenler

BinaryExpression özelliğine NodeTypeAdd eşit ve ve LeftRight özellikleri belirtilen değerlere ayarlanmış bir.

Özel durumlar

left veya right şeklindedir null.

Toplama işleci için lefttanımlanmamıştır. ve rightyazın. Türü.

Örnekler

Aşağıdaki kod örneği, iki tamsayı ekleyen bir ifadenin nasıl oluşturulacağını gösterir.

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

// This expression adds the values of its two arguments.
// Both arguments must be of the same type.
Expression sumExpr = Expression.Add(
    Expression.Constant(1),
    Expression.Constant(2)
);

// Print out the expression.
Console.WriteLine(sumExpr.ToString());

// The following statement first creates an expression tree,
// then compiles it, and then executes it.
Console.WriteLine(Expression.Lambda<Func<int>>(sumExpr).Compile()());

// This code example produces the following output:
//
// (1 + 2)
// 3
' Add the following directive to your file:
' Imports System.Linq.Expressions  

' This expression adds the values of its two arguments.
' Both arguments must be of the same type.
Dim sumExpr As Expression = Expression.Add(
    Expression.Constant(1),
    Expression.Constant(2)
    )

' Print the expression.
Console.WriteLine(sumExpr.ToString())

' The following statement first creates an expression tree,
' then compiles it, and then executes it.            
Console.WriteLine(Expression.Lambda(Of Func(Of Integer))(sumExpr).Compile()())

' This code example produces the following output:
'
' (1 + 2)
' 3

Açıklamalar

Add yöntemi, BinaryExpression özelliği uygulayan yönteme ayarlanmış Method döndürür. Type özelliği düğümün türüne ayarlanır. Düğüm kaldırılırsa IsLifted ve IsLiftedToNull özellikleri her ikisi de true olur. Aksi takdirde, şu şekildedir false. Conversion özelliği null.

Aşağıdaki bilgiler uygulayan yöntemi, düğüm türünü ve bir düğümün kaldırılıp kaldırılmadığını açıklar.

Uygulama yöntemi

Aşağıdaki kurallar, işlem için seçilen uygulama yöntemini belirler:

  • Type veya left özelliği right toplama işlecini aşırı yükleyen kullanıcı tanımlı bir türü temsil ederse, MethodInfo bu yöntemi temsil eden yöntem uygulayan yöntemdir.
  • Aksi takdirde, left.Tür ve right.Tür sayısal türlerse, uygulayan yöntem null şeklindedir.

Düğüm türü ve kaldırılmış ve kaldırılmamış karşılaştırması

Eğer uygulanan yöntem null değilse:

  • Eğer left.Type ve right.Type, uygulayıcı yönteminin ilgili bağımsız değişken türlerine atanabiliyorsa, düğüm kaldırılmaz. Düğümün türü, uygulayan metodun dönüş türüdür.

  • Aşağıdaki iki koşul karşılanırsa düğüm kaldırılır ve düğüm türü, uygulayan yöntemin dönüş türüne karşılık gelen null atanabilir türdür:

    • left. ve right. Türlerin her ikisi de en az birinin nullable olduğu değer türleridir ve karşılık gelen non-nullable türler, uygulayan yöntemin karşılık gelen bağımsız değişken türlerine eşittir.
    • Uygulama yönteminin dönüş türü null değeri almaz bir değer türüdür.

Uygulama yöntemi ise null:

  • Eğer left.Tür ve right.Tür her ikisi de null atanamazsa, düğüm taşınmaz. Düğümün türü, önceden tanımlanmış toplama işlecinin sonuç türüdür.
  • Eğer left.Tür ve right.Tür her ikisi de null atanabilir ise, düğüm kaldırılır. Düğümün türü, önceden tanımlanmış toplama işlecinin sonuç türüne karşılık gelen null atanabilir türdür.

Şunlara uygulanır

Add(Expression, Expression, MethodInfo)

Kaynak:
BinaryExpression.cs
Kaynak:
BinaryExpression.cs
Kaynak:
BinaryExpression.cs
Kaynak:
BinaryExpression.cs
Kaynak:
BinaryExpression.cs

Taşma denetimi olmayan bir aritmetik toplama işlemini temsil eden bir BinaryExpression oluşturur. Uygulayan yöntem belirtilebilir.

public:
 static System::Linq::Expressions::BinaryExpression ^ Add(System::Linq::Expressions::Expression ^ left, System::Linq::Expressions::Expression ^ right, System::Reflection::MethodInfo ^ method);
public static System.Linq.Expressions.BinaryExpression Add(System.Linq.Expressions.Expression left, System.Linq.Expressions.Expression right, System.Reflection.MethodInfo method);
public static System.Linq.Expressions.BinaryExpression Add(System.Linq.Expressions.Expression left, System.Linq.Expressions.Expression right, System.Reflection.MethodInfo? method);
static member Add : System.Linq.Expressions.Expression * System.Linq.Expressions.Expression * System.Reflection.MethodInfo -> System.Linq.Expressions.BinaryExpression
Public Shared Function Add (left As Expression, right As Expression, method As MethodInfo) As BinaryExpression

Parametreler

left
Expression

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

right
Expression

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

method
MethodInfo

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

Döndürülenler

BinaryExpression ve değerine eşit NodeTypeAdd olan ve LeftRightMethod özellikleri belirtilen değerlere ayarlanmış olan bir.

Özel durumlar

left veya right şeklindedir null.

method değil null ve temsil ettiği yöntem döndürüyor void, değil static (Shared Visual Basic'te) veya tam olarak iki bağımsız değişken almaz.

method is null ve toplama işleci için lefttanımlanmamıştır. ve rightyazın. Türü.

Açıklamalar

Add yöntemi, BinaryExpression özelliği uygulayan yönteme ayarlanmış Method döndürür. Type özelliği düğümün türüne ayarlanır. Düğüm kaldırılırsa IsLifted ve IsLiftedToNull özellikleri her ikisi de true olur. Aksi takdirde, şu şekildedir false. Conversion özelliği null.

Aşağıdaki bilgiler uygulayan yöntemi, düğüm türünü ve bir düğümün kaldırılıp kaldırılmadığını açıklar.

Uygulama yöntemi

Aşağıdaki kurallar, işlem için seçilen uygulama yöntemini belirler:

  • Type veya left özelliği right toplama işlecini aşırı yükleyen kullanıcı tanımlı bir türü temsil ederse, MethodInfo bu yöntemi temsil eden yöntem uygulayan yöntemdir.
  • Aksi takdirde, left.Tür ve right.Tür sayısal türlerse, uygulayan yöntem null şeklindedir.

Düğüm türü ve kaldırılmış ve kaldırılmamış karşılaştırması

Eğer uygulanan yöntem null değilse:

  • Eğer left.Type ve right.Type, uygulayıcı yönteminin ilgili bağımsız değişken türlerine atanabiliyorsa, düğüm kaldırılmaz. Düğümün türü, uygulayan metodun dönüş türüdür.

  • Aşağıdaki iki koşul karşılanırsa düğüm kaldırılır ve düğüm türü, uygulayan yöntemin dönüş türüne karşılık gelen null atanabilir türdür:

    • left. ve right. Türlerin her ikisi de en az birinin nullable olduğu değer türleridir ve karşılık gelen non-nullable türler, uygulayan yöntemin karşılık gelen bağımsız değişken türlerine eşittir.
    • Uygulama yönteminin dönüş türü null değeri almaz bir değer türüdür.

Uygulama yöntemi ise null:

  • Eğer left.Tür ve right.Tür her ikisi de null atanamazsa, düğüm taşınmaz. Düğümün türü, önceden tanımlanmış toplama işlecinin sonuç türüdür.
  • Eğer left.Tür ve right.Tür her ikisi de null atanabilir ise, düğüm kaldırılır. Düğümün türü, önceden tanımlanmış toplama işlecinin sonuç türüne karşılık gelen null atanabilir türdür.

Şunlara uygulanır