Expression.AddChecked Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Crea un oggetto BinaryExpression che rappresenta un'operazione di addizione aritmetica che ha il controllo dell'overflow.
Overload
AddChecked(Expression, Expression) |
Crea un oggetto BinaryExpression che rappresenta un'operazione di addizione aritmetica che ha il controllo dell'overflow. |
AddChecked(Expression, Expression, MethodInfo) |
Crea un oggetto BinaryExpression che rappresenta un'operazione di addizione aritmetica che ha il controllo dell'overflow. Il metodo di implementazione può essere specificato. |
AddChecked(Expression, Expression)
- Origine:
- BinaryExpression.cs
- Origine:
- BinaryExpression.cs
- Origine:
- BinaryExpression.cs
Crea un oggetto BinaryExpression che rappresenta un'operazione di addizione aritmetica che ha il controllo dell'overflow.
public:
static System::Linq::Expressions::BinaryExpression ^ AddChecked(System::Linq::Expressions::Expression ^ left, System::Linq::Expressions::Expression ^ right);
public static System.Linq.Expressions.BinaryExpression AddChecked (System.Linq.Expressions.Expression left, System.Linq.Expressions.Expression right);
static member AddChecked : System.Linq.Expressions.Expression * System.Linq.Expressions.Expression -> System.Linq.Expressions.BinaryExpression
Public Shared Function AddChecked (left As Expression, right As Expression) As BinaryExpression
Parametri
- left
- Expression
Oggetto Expression su cui impostare la proprietà Left.
- right
- Expression
Oggetto Expression su cui impostare la proprietà Right.
Restituisce
Oggetto BinaryExpression la cui proprietà NodeType è uguale a AddChecked e le cui proprietà Left e Right sono impostate sui valori specificati.
Eccezioni
left
o right
è null
.
L'operatore di addizione non è definito per left
.Type e right
.Type.
Commenti
Il risultato BinaryExpression ha la Method proprietà impostata sul metodo di implementazione. La Type proprietà è impostata sul tipo del nodo. Se il nodo viene sollevato, le IsLifted proprietà e IsLiftedToNull sono entrambe true
. In caso contrario, sono false
. La proprietà Conversion è null
.
Le informazioni seguenti descrivono il metodo di implementazione, il tipo di nodo e se un nodo viene sollevato.
Metodo di implementazione
Le regole seguenti determinano il metodo di implementazione per l'operazione:
Se la Type proprietà di
left
oright
rappresenta un tipo definito dall'utente che esegue l'overload dell'operatore di aggiunta, l'oggetto MethodInfo che rappresenta tale metodo è il metodo di implementazione.In caso contrario, se
left
. Digitare eright
. Il tipo sono tipi numerici, il metodo di implementazione ènull
.
Tipo di nodo e lifting rispetto a non sollevato
Se il metodo di implementazione non null
è :
Se
left
. Digitare eright
. Il tipo è assegnabile ai tipi di argomenti corrispondenti del metodo di implementazione, il nodo non viene sollevato. Il tipo del nodo è il tipo restituito del metodo di implementazione.Se sono soddisfatte le due condizioni seguenti, il nodo viene sollevato e il tipo del nodo è il tipo nullable che corrisponde al tipo restituito del metodo di implementazione:
left
. Digitare eright
. Il tipo è entrambi i tipi di valore di cui almeno uno è nullable e i tipi non nullable corrispondenti sono uguali ai tipi di argomento corrispondenti del metodo di implementazione.Il tipo restituito del metodo di implementazione è un tipo di valore non nullable.
Se il metodo di implementazione è null
:
Se
left
. Digitare eright
. Il tipo non è nullable, il nodo non viene sollevato. Il tipo del nodo è il tipo di risultato dell'operatore di aggiunta predefinito.Se
left
. Digitare eright
. Il tipo è entrambi nullable, il nodo viene sollevato. Il tipo del nodo è il tipo nullable che corrisponde al tipo di risultato dell'operatore di aggiunta predefinito.
Si applica a
AddChecked(Expression, Expression, MethodInfo)
- Origine:
- BinaryExpression.cs
- Origine:
- BinaryExpression.cs
- Origine:
- BinaryExpression.cs
Crea un oggetto BinaryExpression che rappresenta un'operazione di addizione aritmetica che ha il controllo dell'overflow. Il metodo di implementazione può essere specificato.
public:
static System::Linq::Expressions::BinaryExpression ^ AddChecked(System::Linq::Expressions::Expression ^ left, System::Linq::Expressions::Expression ^ right, System::Reflection::MethodInfo ^ method);
public static System.Linq.Expressions.BinaryExpression AddChecked (System.Linq.Expressions.Expression left, System.Linq.Expressions.Expression right, System.Reflection.MethodInfo method);
public static System.Linq.Expressions.BinaryExpression AddChecked (System.Linq.Expressions.Expression left, System.Linq.Expressions.Expression right, System.Reflection.MethodInfo? method);
static member AddChecked : System.Linq.Expressions.Expression * System.Linq.Expressions.Expression * System.Reflection.MethodInfo -> System.Linq.Expressions.BinaryExpression
Public Shared Function AddChecked (left As Expression, right As Expression, method As MethodInfo) As BinaryExpression
Parametri
- left
- Expression
Oggetto Expression su cui impostare la proprietà Left.
- right
- Expression
Oggetto Expression su cui impostare la proprietà Right.
- method
- MethodInfo
Oggetto MethodInfo su cui impostare la proprietà Method.
Restituisce
Oggetto BinaryExpression la cui proprietà NodeType è uguale a AddChecked e le cui proprietà Left, Right e Method sono impostate sui valori specificati.
Eccezioni
left
o right
è null
.
method
non è null
e il metodo che rappresenta restituisce void
, non è static
(Shared
in Visual Basic) oppure non accetta esattamente due argomenti.
method
è null
e l'operatore di addizione non è definito per i tipi left
.Type e right
.Type.
Commenti
Il risultato BinaryExpression ha la Method proprietà impostata sul metodo di implementazione. La Type proprietà è impostata sul tipo del nodo. Se il nodo viene sollevato, le IsLifted proprietà e IsLiftedToNull sono entrambe true
. In caso contrario, sono false
. La proprietà Conversion è null
.
Le informazioni seguenti descrivono il metodo di implementazione, il tipo di nodo e se un nodo viene sollevato.
Metodo di implementazione
Il metodo di implementazione per l'operazione viene scelto in base alle regole seguenti:
Se
method
nonnull
è e rappresenta un metodo non vuoto,static
(Shared
in Visual Basic) che accetta due argomenti, è il metodo di implementazione per il nodo.In caso contrario, se la proprietà di
left
oright
rappresenta un tipo definito dall'utente che esegue l'overload Type dell'operatore di aggiunta, l'oggetto MethodInfo che rappresenta tale metodo è il metodo di implementazione.In caso contrario, se
left
. Digitare eright
. Il tipo sono tipi numerici, il metodo di implementazione ènull
.
Tipo di nodo e lifting rispetto a non sollevato
Se il metodo di implementazione non null
è :
Se
left
. Digitare eright
. Il tipo è assegnabile ai tipi di argomenti corrispondenti del metodo di implementazione, il nodo non viene sollevato. Il tipo del nodo è il tipo restituito del metodo di implementazione.Se sono soddisfatte le due condizioni seguenti, il nodo viene sollevato e il tipo del nodo è il tipo nullable che corrisponde al tipo restituito del metodo di implementazione:
left
. Digitare eright
. Il tipo è entrambi i tipi di valore di cui almeno uno è nullable e i tipi non nullable corrispondenti sono uguali ai tipi di argomento corrispondenti del metodo di implementazione.Il tipo restituito del metodo di implementazione è un tipo di valore non nullable.
Se il metodo di implementazione è null
:
Se
left
. Digitare eright
. Il tipo non è nullable, il nodo non viene sollevato. Il tipo del nodo è il tipo di risultato dell'operatore di aggiunta predefinito.Se
left
. Digitare eright
. Il tipo è entrambi nullable, il nodo viene sollevato. Il tipo del nodo è il tipo nullable che corrisponde al tipo di risultato dell'operatore di aggiunta predefinito.