Expression.AndAlso Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
yalnızca ilk işlenen olarak değerlendirilirse ikinci işleneni değerlendiren true
bir koşullu AND
işlemi temsil eden bir BinaryExpression oluşturur.
Aşırı Yüklemeler
AndAlso(Expression, Expression, MethodInfo) |
yalnızca ilk işlenen true olarak çözümlendiğinde ikinci işleneni değerlendiren bir koşullu |
AndAlso(Expression, Expression) |
yalnızca ilk işlenen olarak değerlendirilirse ikinci işleneni değerlendiren |
AndAlso(Expression, Expression, MethodInfo)
- Kaynak:
- BinaryExpression.cs
- Kaynak:
- BinaryExpression.cs
- Kaynak:
- BinaryExpression.cs
yalnızca ilk işlenen true olarak çözümlendiğinde ikinci işleneni değerlendiren bir koşullu AND
işlemi temsil eden bir BinaryExpression oluşturur. Uygulayan yöntem belirtilebilir.
public:
static System::Linq::Expressions::BinaryExpression ^ AndAlso(System::Linq::Expressions::Expression ^ left, System::Linq::Expressions::Expression ^ right, System::Reflection::MethodInfo ^ method);
public static System.Linq.Expressions.BinaryExpression AndAlso (System.Linq.Expressions.Expression left, System.Linq.Expressions.Expression right, System.Reflection.MethodInfo method);
public static System.Linq.Expressions.BinaryExpression AndAlso (System.Linq.Expressions.Expression left, System.Linq.Expressions.Expression right, System.Reflection.MethodInfo? method);
static member AndAlso : System.Linq.Expressions.Expression * System.Linq.Expressions.Expression * System.Reflection.MethodInfo -> System.Linq.Expressions.BinaryExpression
Public Shared Function AndAlso (left As Expression, right As Expression, method As MethodInfo) 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.
- method
- MethodInfo
Özelliğini eşittir Method olarak ayarlamak için AMethodInfo.
Döndürülenler
BinaryExpression ve , MethodRightve Leftözellikleri belirtilen değerlere AndAlso 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 left
tanımlanmamıştır. ve right
yazın. Türü.
-veya-
method
ve left
şeklindedirnull
. ve right
yazın. Tür aynı Boole türü değil.
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 true
olur. 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
method
null
ve iki bağımsız değişken alan voidstatic
olmayan bir yöntemi (Shared
Visual Basic'te) temsil ediyorsa, düğüm için uygulayan yöntemdir.Aksi takdirde, Type veya
right
özelliğileft
bit düzeyindeAND
işleci aşırı yükleyen kullanıcı tanımlı bir türü temsil ederse, MethodInfo bu yöntemi temsil eden uygulama yöntemidir.Not
Koşullu
AND
işleç C# veya Visual Basic'te aşırı yüklenemez. Ancak, koşulluAND
işleç bit düzeyindeAND
işleç kullanılarak değerlendirilir. Bu nedenle, bit düzeyindeAND
işlecin kullanıcı tanımlı aşırı yüklemesi bu düğüm türü için uygulayan yöntem olabilir.Aksi takdirde, ise
left
. veright
yazın. Tür Boole türleri, uygulayan yöntem ise şeklindedirnull
.
Düğüm Türü ve Yükseltilmiş ve Yükseltilmemiş Karşılaştırması
Uygulayan yöntem değilse null
:
Ise
left
. veright
yazı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
. veright
yazın. Tür, her ikisi de en az birinin null atanabilir olduğu değer türleridir ve karşılık gelen null atanamaz türler, uygulayan yöntemin karşılık gelen bağımsız değişken türlerine eşittir.Uygulayan yöntemin dönüş türü null atanamaz bir değer türüdür.
Uygulayan yöntem ise null
:
left
. veright
yazın. Tür aynı Boole türündedir.Ise
left
. veright
yazın. Tür null atanamaz, düğüm kaldırılmaz. Düğümün türü, önceden tanımlanmış koşulluAND
işlecin sonuç türüdür.Ise
left
. veright
yazın. Tür null atanabilir, düğüm kaldırılır. Düğümün türü, önceden tanımlanmış koşulluAND
işlecin sonuç türüne karşılık gelen null atanabilir türdür.
Şunlara uygulanır
AndAlso(Expression, Expression)
- Kaynak:
- BinaryExpression.cs
- Kaynak:
- BinaryExpression.cs
- Kaynak:
- BinaryExpression.cs
yalnızca ilk işlenen olarak değerlendirilirse ikinci işleneni değerlendiren true
bir koşullu AND
işlemi temsil eden bir BinaryExpression oluşturur.
public:
static System::Linq::Expressions::BinaryExpression ^ AndAlso(System::Linq::Expressions::Expression ^ left, System::Linq::Expressions::Expression ^ right);
public static System.Linq.Expressions.BinaryExpression AndAlso (System.Linq.Expressions.Expression left, System.Linq.Expressions.Expression right);
static member AndAlso : System.Linq.Expressions.Expression * System.Linq.Expressions.Expression -> System.Linq.Expressions.BinaryExpression
Public Shared Function AndAlso (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 AndAlsoLeftRight ayarlanmış özelliğine sahip NodeType bir.
Özel durumlar
left
veya right
şeklindedir null
.
Bit düzeyinde AND
işleç için left
tanımlanmamıştır. ve right
yazın. Türü.
-veya-
left
. ve right
yazın. Tür aynı Boole türü değil.
Örnekler
Aşağıdaki kod örneği, yalnızca ilk işlenen olarak değerlendirilirse iki işlenende mantıksal AND işlemi gerçekleştiren bir ifadenin nasıl oluşturulacağını true
gösterir.
// Add the following directive to your file:
// using System.Linq.Expressions;
// This expression perfroms a logical AND operation
// on its two arguments, but if the first argument is false,
// then the second arument is not evaluated.
// Both arguments must be of the boolean type.
Expression andAlsoExpr = Expression.AndAlso(
Expression.Constant(false),
Expression.Constant(true)
);
// Print out the expression.
Console.WriteLine(andAlsoExpr.ToString());
// The following statement first creates an expression tree,
// then compiles it, and then executes it.
Console.WriteLine(Expression.Lambda<Func<bool>>(andAlsoExpr).Compile()());
// This code example produces the following output:
//
// (False AndAlso True)
// False
' Add the following directive to your file:
' Imports System.Linq.Expressions
' This expression performs a logical AND operation
' on its two arguments, but if the first argument is false,
' the second argument is not evaluated.
' Both arguments must be of the Boolean type.
Dim andAlsoExpr As Expression = Expression.AndAlso(
Expression.Constant(False),
Expression.Constant(True)
)
' Print the expression.
Console.WriteLine(andAlsoExpr.ToString())
' The following statement first creates an expression tree,
' then compiles it, and then executes it.
Console.WriteLine(Expression.Lambda(Of Func(Of Boolean))(andAlsoExpr).Compile()())
' This code example produces the following output:
'
' (False AndAlso True)
' 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 true
olur. 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ğileft
bit düzeyindeAND
işleci aşırı yükleyen kullanıcı tanımlı bir türü temsil ederse, MethodInfo bu yöntemi temsil eden uygulama yöntemidir.Not
Koşullu
AND
işleç C# veya Visual Basic'te aşırı yüklenemez. Ancak, koşulluAND
işleç bit düzeyindeAND
işleç kullanılarak değerlendirilir. Bu nedenle, bit düzeyindeAND
işlecin kullanıcı tanımlı aşırı yüklemesi bu düğüm türü için uygulayan yöntem olabilir.Aksi takdirde, ise
left
. veright
yazın. Tür Boole türleri, uygulayan yöntem ise şeklindedirnull
.
Düğüm Türü ve Yükseltilmiş ve Yükseltilmemiş Karşılaştırması
Uygulayan yöntem değilse null
:
Ise
left
. veright
yazı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
. veright
yazın. Tür, her ikisi de en az birinin null atanabilir olduğu değer türleridir ve karşılık gelen null atanamaz türler, uygulayan yöntemin karşılık gelen bağımsız değişken türlerine eşittir.Uygulayan yöntemin dönüş türü null atanamaz bir değer türüdür.
Uygulayan yöntem ise null
:
left
. veright
yazın. Tür aynı Boole türündedir.Ise
left
. veright
yazın. Tür null atanamaz, düğüm kaldırılmaz. Düğümün türü, önceden tanımlanmış koşulluAND
işlecin sonuç türüdür.Ise
left
. veright
yazın. Tür null atanabilir, düğüm kaldırılır. Düğümün türü, önceden tanımlanmış koşulluAND
işlecin sonuç türüne karşılık gelen null atanabilir türdür.