Expression.Not Yöntem

Tanım

Bit düzeyinde tamamlama işlemini temsil eden bir UnaryExpression oluşturur.

Aşırı Yüklemeler

Not(Expression)

Bit düzeyinde tamamlama işlemini temsil eden bir UnaryExpression oluşturur.

Not(Expression, MethodInfo)

Bit düzeyinde tamamlama işlemini temsil eden bir UnaryExpression oluşturur. Uygulayan yöntem belirtilebilir.

Not(Expression)

Kaynak:
UnaryExpression.cs
Kaynak:
UnaryExpression.cs
Kaynak:
UnaryExpression.cs

Bit düzeyinde tamamlama işlemini temsil eden bir UnaryExpression oluşturur.

public:
 static System::Linq::Expressions::UnaryExpression ^ Not(System::Linq::Expressions::Expression ^ expression);
public static System.Linq.Expressions.UnaryExpression Not (System.Linq.Expressions.Expression expression);
static member Not : System.Linq.Expressions.Expression -> System.Linq.Expressions.UnaryExpression
Public Shared Function Not (expression As Expression) As UnaryExpression

Parametreler

expression
Expression

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

Döndürülenler

UnaryExpression özelliğine NodeTypeNot eşit olan ve Operand özelliği belirtilen değere ayarlanmış bir.

Özel durumlar

expression, null değeridir.

birli not işleci için expressiontanımlanmamıştır. Türü.

Örnekler

Aşağıdaki örnekte, mantıksal NOT işlemini temsil eden bir ifadenin nasıl oluşturulacağı gösterilmektedir.

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

// This expression represents a NOT operation.
Expression notExpr = Expression.Not(Expression.Constant(true));

Console.WriteLine(notExpr);

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

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

' This expression represents a NOT operation.
Dim notExpr As Expression = Expression.Not(Expression.Constant(True))

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

' This code example produces the following output:
'
' Not(True)
' False

Açıklamalar

Sonuçta MethodUnaryExpression elde edilen özelliğini uygulayan yöntemine ayarlanı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 şeklindedir false.

Yöntem Uygulama

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

  • ise expression. Tür, birli not işlecini tanımlayan kullanıcı tanımlı bir türdür, MethodInfo bu işleci temsil eden ise uygulayan yöntemdir.

  • Aksi takdirde, ise expression. Tür sayısal veya Boole türünde, uygulayan yöntem ise şeklindedir null.

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

Uygulayan yöntem değilse null:

  • ise expression. Tür, uygulayan yöntemin bağımsız değişken türüne 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:

    • expression. Tür null atanabilir bir değer türüdür ve karşılık gelen null atanamaz tür, uygulayan yöntemin bağımsız değişken türüne eşittir.

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

Uygulayan yöntem ise nulldüğümün türü olur expression. Türü. ise expression. Tür null atanamaz, düğüm kaldırılmaz. Aksi takdirde düğüm kaldırılır.

Şunlara uygulanır

Not(Expression, MethodInfo)

Kaynak:
UnaryExpression.cs
Kaynak:
UnaryExpression.cs
Kaynak:
UnaryExpression.cs

Bit düzeyinde tamamlama işlemini temsil eden bir UnaryExpression oluşturur. Uygulayan yöntem belirtilebilir.

public:
 static System::Linq::Expressions::UnaryExpression ^ Not(System::Linq::Expressions::Expression ^ expression, System::Reflection::MethodInfo ^ method);
public static System.Linq.Expressions.UnaryExpression Not (System.Linq.Expressions.Expression expression, System.Reflection.MethodInfo method);
public static System.Linq.Expressions.UnaryExpression Not (System.Linq.Expressions.Expression expression, System.Reflection.MethodInfo? method);
static member Not : System.Linq.Expressions.Expression * System.Reflection.MethodInfo -> System.Linq.Expressions.UnaryExpression
Public Shared Function Not (expression As Expression, method As MethodInfo) As UnaryExpression

Parametreler

expression
Expression

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

method
MethodInfo

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

Döndürülenler

UnaryExpression özelliğine NotNodeType eşit olan ve ve MethodOperand özellikleri belirtilen değerlere ayarlanmış bir.

Özel durumlar

expression, null değeridir.

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

method is null ve birli not işleci için expressiontanımlanmamıştır. Türü.

-veya-

expression. türü (veya null atanabilir bir değer türüyse karşılık gelen null atanamaz türü) tarafından methodtemsil edilen yöntemin bağımsız değişken türüne atanamaz.

Açıklamalar

Sonuçta MethodUnaryExpression elde edilen özelliğini uygulayan yöntemine ayarlanı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 şeklindedir false.

Yöntem Uygulama

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

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

  • ise expression. Tür, birli not işlecini tanımlayan kullanıcı tanımlı bir türdür, MethodInfo bu işleci temsil eden ise uygulayan yöntemdir.

  • Aksi takdirde, ise expression. Tür sayısal bir tür, uygulayan yöntem ise şeklindedir null.

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

Uygulayan yöntem değilse null:

  • ise expression. Tür, uygulayan yöntemin bağımsız değişken türüne 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:

    • expression. Tür null atanabilir bir değer türüdür ve karşılık gelen null atanamaz değer türü, uygulayan yöntemin bağımsız değişken türüne eşittir.

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

Uygulayan yöntem ise nulldüğümün türü olur expression. Türü. ise expression. Tür null atanamaz, düğüm kaldırılmaz. Aksi takdirde düğüm kaldırılır.

Şunlara uygulanır