ConditionalExpression Klasse
Dieser Artikel wurde maschinell übersetzt. Wenn Sie die englische Version des Artikels anzeigen möchten, aktivieren Sie das Kontrollkästchen Englisch. Sie können den englischen Text auch in einem Popupfenster anzeigen, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

ConditionalExpression-Klasse

 

Stellt einen Ausdruck mit einem bedingten Operator dar.

Namespace:   System.Linq.Expressions
Assembly:  System.Core (in System.Core.dll)

System.Object
  System.Linq.Expressions.Expression
    System.Linq.Expressions.ConditionalExpression

public class ConditionalExpression : Expression

NameBeschreibung
System_CAPS_pubpropertyCanReduce

Gibt an, dass der Knoten zu einem einfacheren Knoten reduziert werden kann. Wenn true zurückgegeben wird, kann Reduce() aufgerufen werden, um das reduzierte Formular zu erzeugen.(Geerbt von Expression.)

System_CAPS_pubpropertyIfFalse

Ruft den Ausdruck ab, die ausgeführt werden, wenn der Test ergibt false.

System_CAPS_pubpropertyIfTrue

Ruft den Ausdruck ab, die ausgeführt werden, wenn der Test ergibt true.

System_CAPS_pubpropertyNodeType

Gibt den Knotentyp dieses Ausdrucks zurück. Erweiterungsknoten sollten Extension beim Überschreiben dieser Methode zurückgeben.(Setzt "Expression.NodeType" außer Kraft.)

System_CAPS_pubpropertyTest

Ruft den Test der bedingten Operation ab.

System_CAPS_pubpropertyType

Ruft den statischen Typ des Ausdrucks ab, den dieser Expression darstellt.(Setzt "Expression.Type" außer Kraft.)

NameBeschreibung
System_CAPS_protmethodAccept(ExpressionVisitor)

Sendet an die spezifische Visit-Methode für diesen Knotentyp. Beispielsweise ruft MethodCallExpression die Methode VisitMethodCall auf.(Setzt "Expression.Accept(ExpressionVisitor)" außer Kraft.)

System_CAPS_pubmethodEquals(Object)

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.(Geerbt von Object.)

System_CAPS_protmethodFinalize()

Gibt einem Objekt Gelegenheit, Ressourcen freizugeben und andere Bereinigungen durchzuführen, bevor es von der Garbage Collection freigegeben wird. (Geerbt von Object.)

System_CAPS_pubmethodGetHashCode()

Fungiert als die Standardhashfunktion.(Geerbt von Object.)

System_CAPS_pubmethodGetType()

Ruft den Type der aktuellen Instanz ab.(Geerbt von Object.)

System_CAPS_protmethodMemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.(Geerbt von Object.)

System_CAPS_pubmethodReduce()

Reduziert diesen Knoten zu einem einfacheren Ausdruck. Wenn CanReduce true zurückgibt, sollte ein gültiger Ausdruck zurückgegeben werden. Diese Methode kann einen anderen Knoten zurückgeben, der selbst reduziert werden muss.(Geerbt von Expression.)

System_CAPS_pubmethodReduceAndCheck()

Reduziert diesen Knoten zu einem einfacheren Ausdruck. Wenn CanReduce true zurückgibt, sollte ein gültiger Ausdruck zurückgegeben werden. Diese Methode kann einen anderen Knoten zurückgeben, der selbst reduziert werden muss.(Geerbt von Expression.)

System_CAPS_pubmethodReduceExtensions()

Reduziert den Ausdruck zu einem bekannten Knotentyp (kein Erweiterungsknoten) oder gibt nur den Ausdruck zurück, wenn es sich um einen bereits bekannten Typ handelt.(Geerbt von Expression.)

System_CAPS_pubmethodToString()

Gibt eine Textdarstellung des Expression zurück.(Geerbt von Expression.)

System_CAPS_pubmethodUpdate(Expression, Expression, Expression)

Erstellt einen neuen Ausdruck, der diesem ähnelt, verwendet jedoch die angegebenen untergeordneten Elemente. Wenn alle untergeordneten Objekte identisch sind, wird dieser Ausdruck zurückgegeben.

System_CAPS_protmethodVisitChildren(ExpressionVisitor)

Reduziert den Knoten und ruft dann den Visitor-Delegaten für den reduzierten Ausdruck auf. Die Methode löst eine Ausnahme aus, wenn der Knoten nicht reduziert werden kann.(Geerbt von Expression.)

Verwenden der Condition Factorymethode zum Erstellen einer ConditionalExpression.

Die NodeType von einem ConditionalExpression ist Conditional.

Im folgenden Codebeispiel wird veranschaulicht, wie einen Ausdruck erstellt, der eine bedingte Anweisung darstellt. Wenn das erste Argument ergibt true, das zweite Argument ausgeführt, andernfalls das dritte Argument ausgeführt wird.

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

int num = 100;

// This expression represents a conditional operation. 
// It evaluates the test (first expression) and
// executes the iftrue block (second argument) if the test evaluates to true, 
// or the iffalse block (third argument) if the test evaluates to false.
Expression conditionExpr = Expression.Condition(
                           Expression.Constant(num > 10),
                           Expression.Constant("num is greater than 10"),
                           Expression.Constant("num is smaller than 10")
                         );

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

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

// This code example produces the following output:
//
// IIF("True", "num is greater than 10", "num is smaller than 10")
// num is greater than 10

Universal Windows Platform
Verfügbar seit 8
.NET Framework
Verfügbar seit 3.5
Portable Class Library
Unterstützt in: portable .NET platforms
Silverlight
Verfügbar seit 2.0
Windows Phone Silverlight
Verfügbar seit 7.0
Windows Phone
Verfügbar seit 8.1

Öffentliche statische (in Visual Basic freigegebene) Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.

Zurück zum Anfang
Anzeigen:
© 2016 Microsoft