Expression.And Yöntem

Tanım

Bit tabanlı AND işlemi temsil eden bir BinaryExpression oluşturur.

Aşırı Yüklemeler

And(Expression, Expression)

Bit tabanlı AND işlemi temsil eden bir BinaryExpression oluşturur.

And(Expression, Expression, MethodInfo)

Bit tabanlı AND işlemi temsil eden bir BinaryExpression oluşturur. Uygulayan yöntem belirtilebilir.

And(Expression, Expression)

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

Bit tabanlı AND işlemi temsil eden bir BinaryExpression oluşturur.

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

Parametreler

left
Expression

Özelliğini eşittir Left olarak ayarlamak için AExpression.

right
Expression

Özelliğini eşittir Right olarak ayarlamak için AExpression.

Döndürülenler

BinaryExpression ve ve özellikleri belirtilen değerlere AndLeftRight ayarlanmış özelliğine sahip NodeType bir.

Özel durumlar

left veya right şeklindedir null.

Bit düzeyinde AND işleç için lefttanımlanmamıştır. ve rightyazın. Türü.

Örnekler

Aşağıdaki kod örneği, iki Boole değeri üzerinde mantıksal AND işlemini temsil eden bir ifadenin nasıl oluşturulacağını gösterir.

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

// This expression perfroms a logical AND operation
// on its two arguments. Both arguments must be of the same type,
// which can be boolean or integer.
Expression andExpr = Expression.And(
    Expression.Constant(true),
    Expression.Constant(false)
);

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

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

// This code example produces the following output:
//
// (True And False)
// False
' Add the following directive to your file:
' Imports System.Linq.Expressions 

' This expression performs a logical AND operation
' on its two arguments. Both arguments must be of the same type,
' which can be Boolean or integer.             
Dim andExpr As Expression = Expression.And(
    Expression.Constant(True),
    Expression.Constant(False)
    )

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

' The following statement first creates an expression tree,
' then compiles it, and then executes it.       
Console.WriteLine(
    Expression.Lambda(Of Func(Of Boolean))(andExpr).Compile()())
' This code example produces the following output:
'
' (True And False)
' False

Açıklamalar

Elde edilen BinaryExpressionMethod özelliği uygulayan yönteme ayarlanmıştı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 trueolur. Aksi takdirde, bunlar olur false. Conversion özelliğidirnull.

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

Yöntem Uygulama

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

  • Type veya right özelliği left bit düzeyinde AND işleci aşırı yükleyen kullanıcı tanımlı bir türü temsil ederse, MethodInfo bu yöntemi temsil eden uygulama yöntemidir.

  • Aksi takdirde, ise left. ve rightyazın. Tür integral veya Boole türleridir, uygulayan yöntem şeklindedir null.

Düğüm Türü ve Yükseltilmiş ve Yükseltilmemiş Karşılaştırması

Uygulayan yöntem değilse null:

  • Ise left. ve rightyazın. Tür, uygulayan yöntemin ilgili bağımsız değişken türlerine atanabilir, düğüm kaldırılmaz. Düğümün türü, uygulayan yöntemin dönüş türüdür.

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

    • left. ve rightyazın. Tür, en az birinin null atanabilir olduğu ve karşılık gelen boş değer atanamayan türlerin her ikisi de uygulayan yöntemin karşılık gelen bağımsız değişken türlerine eşit olan değer türleridir.

    • Uygulayan yöntemin dönüş türü null atanamaz bir değer türüdür.

Uygulayan yöntem ise null:

  • Ise left. ve rightyazın. Türün her ikisi de null atanamaz, düğüm kaldırılmaz. Düğümün türü, önceden tanımlanmış bit düzeyinde AND işlecin sonuç türüdür.

  • Ise left. ve rightyazın. Türün her ikisi de null atanabilir, düğüm kaldırılır. Düğümün türü, önceden tanımlanmış bit düzeyinde işlecin sonuç türüne karşılık gelen null atanabilir türdür AND .

Şunlara uygulanır

And(Expression, Expression, MethodInfo)

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

Bit tabanlı AND işlemi temsil eden bir BinaryExpression oluşturur. Uygulayan yöntem belirtilebilir.

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

Parametreler

left
Expression

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

right
Expression

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

method
MethodInfo

Özelliğini eşittir Method olarak ayarlamak için AMethodInfo.

Döndürülenler

BinaryExpression ve , MethodRightve Leftözellikleri belirtilen değerlere And ayarlanmış özelliğine sahip NodeType bir.

Özel durumlar

left veya right şeklindedir null.

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

method is null ve bit tabanlı AND işleç için lefttanımlanmamıştır. ve rightyazın. Türü.

Açıklamalar

Elde edilen BinaryExpressionMethod özelliği uygulayan yönteme ayarlanmıştı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 trueolur. Aksi takdirde, bunlar olur false. Conversion özelliğidirnull.

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

Yöntem Uygulama

İşlem için uygulayan yöntem aşağıdaki kurallara göre seçilir:

  • değilse methodnull ve iki bağımsız değişken alan void static olmayan bir yöntemi (Shared Visual Basic'te) temsil ediyorsa, düğüm için uygulayan yöntemdir.

  • Aksi takdirde, Type veya right özelliği left bit düzeyinde AND işleci aşırı yükleyen kullanıcı tanımlı bir türü temsil ederse, MethodInfo bu yöntemi temsil eden uygulama yöntemidir.

  • Aksi takdirde, ise left. ve rightyazın. Tür integral veya Boole türleridir, uygulayan yöntem şeklindedir null.

Düğüm Türü ve Yükseltilmiş ve Yükseltilmemiş Karşılaştırması

Uygulayan yöntem değilse null:

  • Ise left. ve rightyazın. Tür, uygulayan yöntemin ilgili bağımsız değişken türlerine atanabilir, düğüm kaldırılmaz. Düğümün türü, uygulayan yöntemin dönüş türüdür.

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

    • left. ve rightyazın. Tür, en az birinin null atanabilir olduğu ve karşılık gelen boş değer atanamayan türlerin her ikisi de uygulayan yöntemin karşılık gelen bağımsız değişken türlerine eşit olan değer türleridir.

    • Uygulayan yöntemin dönüş türü null atanamaz bir değer türüdür.

Uygulayan yöntem ise null:

  • Ise left. ve rightyazın. Türün her ikisi de null atanamaz, düğüm kaldırılmaz. Düğümün türü, önceden tanımlanmış bit düzeyinde AND işlecin sonuç türüdür.

  • Ise left. ve rightyazın. Türün her ikisi de null atanabilir, düğüm kaldırılır. Düğümün türü, önceden tanımlanmış bit düzeyinde işlecin sonuç türüne karşılık gelen null atanabilir türdür AND .

Şunlara uygulanır