System.Linq.Expressions.Expression.Add-Methoden
Dieser Artikel enthält ergänzende Hinweise zur Referenzdokumentation für diese API.
Die Add Methode gibt einen BinaryExpression Wert zurück, der die Method Eigenschaft auf die Implementierungsmethode festgelegt hat. Die Type Eigenschaft wird auf den Typ des Knotens festgelegt. Wenn der Knoten aufgehoben wird, sind true
beide IsLiftedIsLiftedToNull Eigenschaften. Andernfalls sind false
sie . Die Conversion-Eigenschaft ist null
.
Die folgenden Informationen beschreiben die Implementierungsmethode, den Knotentyp und ob ein Knoten aufgehoben wird.
Implementieren der Methode
Die folgenden Regeln bestimmen die ausgewählte Implementierungsmethode für den Vorgang:
- Wenn die Type Eigenschaft eines
left
oderright
eines benutzerdefinierten Typs darstellt, der den Additionsoperator überlastet, ist dies MethodInfo die Implementierungsmethode. - Andernfalls, wenn
left
. Typ undright
. Typ sind numerische Typen, die Implementierungsmethode lautetnull
.
Knotentyp und aufgehoben im Vergleich zu nicht aufgehobenen
Wenn die Implementierungsmethode nicht null
lautet:
Wenn
left
. Typ undright
. Typ kann den entsprechenden Argumenttypen der Implementierungsmethode zugewiesen werden, der Knoten wird nicht aufgehoben. Der Typ des Knotens ist der Rückgabetyp der Implementierungsmethode.Wenn die folgenden beiden Bedingungen erfüllt sind, wird der Knoten aufgehoben, und der Typ des Knotens ist der nullable Typ, der dem Rückgabetyp der Implementierungsmethode entspricht:
left
. Typ undright
. Typ sind beide Werttypen, von denen mindestens ein Nullwert zulässig ist, und die entsprechenden nicht nullablen Typen entsprechen den entsprechenden Argumenttypen der implementierenden Methode.- Der Rückgabetyp der Implementierungsmethode ist ein nicht nullwertbarer Werttyp.
Wenn die Implementierungsmethode lautet null
:
- Wenn
left
. Typ undright
. Der Typ ist nicht nullfähig, der Knoten wird nicht aufgehoben. Der Typ des Knotens ist der Ergebnistyp des vordefinierten Additionsoperators. - Wenn
left
. Typ undright
. Der Typ ist beide nullfähig, der Knoten wird aufgehoben. Der Typ des Knotens ist der nullwerte Typ, der dem Ergebnistyp des vordefinierten Additionsoperators entspricht.