Aracılığıyla paylaş


Expression.Not Yöntem

Tanım

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

Aşırı Yüklemeler

Name Description
Not(Expression)

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

Not(Expression, MethodInfo)

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

Not(Expression)

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

UnaryExpression Bit düzeyinde tamamlama işlemini temsil eden bir 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

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

Döndürülenler

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

Özel durumlar

expression, null'e eşittir.

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ği uygulayan yönteme 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 true olur. Aksi takdirde, şu şekildedir false.

Uygulama Yöntemi

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 ve MethodInfo bu işleci temsil eden, 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 Kaldırılan ile KaldırılmayanLar karşılaştırması

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

  • 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 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:

    • 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.

    • Uygulama yönteminin dönüş türü null değeri almaz bir değer türüdür.

Uygulayan yöntem ise null, düğü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
Kaynak:
UnaryExpression.cs
Kaynak:
UnaryExpression.cs

UnaryExpression Bit düzeyinde tamamlama işlemini temsil eden bir 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

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

method
MethodInfo

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

Döndürülenler

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

Özel durumlar

expression, null'e eşittir.

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 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ği uygulayan yönteme 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 true olur. Aksi takdirde, şu şekildedir false.

Uygulama Yöntemi

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

  • Değilse methodnull ve bir bağımsız değişken alan geçersiz static olmayan (Shared Visual Basic'te) yöntemini 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 ve MethodInfo bu işleci temsil eden, 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 Kaldırılan ile KaldırılmayanLar karşılaştırması

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

  • 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 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:

    • 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.

    • Uygulama yönteminin dönüş türü null değeri almaz bir değer türüdür.

Uygulayan yöntem ise null, düğü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