Expression.Negate 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.
Aritmetik bir olumsuzlama işlemini temsil eden bir UnaryExpression oluşturur.
Aşırı Yüklemeler
Negate(Expression, MethodInfo) |
Aritmetik bir olumsuzlama işlemini temsil eden bir UnaryExpression oluşturur. |
Negate(Expression) |
Aritmetik bir olumsuzlama işlemini temsil eden bir UnaryExpression oluşturur. |
Negate(Expression, MethodInfo)
- Kaynak:
- UnaryExpression.cs
- Kaynak:
- UnaryExpression.cs
- Kaynak:
- UnaryExpression.cs
Aritmetik bir olumsuzlama işlemini temsil eden bir UnaryExpression oluşturur.
public:
static System::Linq::Expressions::UnaryExpression ^ Negate(System::Linq::Expressions::Expression ^ expression, System::Reflection::MethodInfo ^ method);
public static System.Linq.Expressions.UnaryExpression Negate (System.Linq.Expressions.Expression expression, System.Reflection.MethodInfo method);
public static System.Linq.Expressions.UnaryExpression Negate (System.Linq.Expressions.Expression expression, System.Reflection.MethodInfo? method);
static member Negate : System.Linq.Expressions.Expression * System.Reflection.MethodInfo -> System.Linq.Expressions.UnaryExpression
Public Shared Function Negate (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ğini eşittir Method olarak ayarlamak için AMethodInfo.
Döndürülenler
UnaryExpression ve ve özellikleri belirtilen değerlere NegateOperandMethod ayarlanmış özelliğine sahip NodeType bir.
Özel durumlar
expression
, null
değeridir.
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 bir bağımsız değişken almaz.
method
is null
ve birli eksi işleci için expression
tanı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 method
temsil 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, bunlar false olur.
Yöntem Uygulama
Aşağıdaki kurallar, işlem için uygulama yöntemini belirler:
değilse
null
ve bir bağımsız değişken alan voidstatic
olmayan bir yöntemi (Shared
Visual Basic'te) temsil ediyorsamethod
, düğüm için uygulayan yöntemdir.Ise
expression
. Tür, birli eksi işlecini tanımlayan kullanıcı tanımlı bir türdür ve MethodInfo bu işleci temsil eden uygulama yöntemidir.Aksi takdirde, ise
expression
. Tür sayısal bir tür, 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
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 atanamaz bir değer türüdür.
Uygulama yöntemi 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
Negate(Expression)
- Kaynak:
- UnaryExpression.cs
- Kaynak:
- UnaryExpression.cs
- Kaynak:
- UnaryExpression.cs
Aritmetik bir olumsuzlama işlemini temsil eden bir UnaryExpression oluşturur.
public:
static System::Linq::Expressions::UnaryExpression ^ Negate(System::Linq::Expressions::Expression ^ expression);
public static System.Linq.Expressions.UnaryExpression Negate (System.Linq.Expressions.Expression expression);
static member Negate : System.Linq.Expressions.Expression -> System.Linq.Expressions.UnaryExpression
Public Shared Function Negate (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 NodeTypeNegate eşit olan ve Operand özelliği belirtilen değere ayarlanmış olan.
Özel durumlar
expression
, null
değeridir.
Birli eksi işleci için expression
tanımlanmamıştır. Türü.
Örnekler
Aşağıdaki örnekte, bir aritmetik olumsuzlama 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 negation operation.
Expression negateExpr = Expression.Negate(Expression.Constant(5));
// The following statement first creates an expression tree,
// then compiles it, and then runs it.
Console.WriteLine(Expression.Lambda<Func<int>>(negateExpr).Compile()());
// This code example produces the following output:
//
// -5
' Add the following directive to your file:
' Imports System.Linq.Expressions
' This expression represents a negation operation.
Dim negateExpr As Expression = Expression.Negate(Expression.Constant(5))
' The following statement first creates an expression tree,
' then compiles it, and then runs it.
Console.WriteLine(Expression.Lambda(Of Func(Of Integer))(negateExpr).Compile()())
' This code example produces the following output:
'
' -5
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, bunlar false olur.
Yöntem Uygulama
Aşağıdaki kurallar, işlem için uygulama yöntemini belirler:
Ise
expression
. Tür, birli eksi işlecini tanımlayan kullanıcı tanımlı bir türdür ve MethodInfo bu işleci temsil eden uygulama yöntemidir.Aksi takdirde, ise
expression
. Tür sayısal bir tür, 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
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 atanamaz bir değer türüdür.
Uygulama yöntemi 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.