Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Questo articolo fornisce osservazioni supplementari alla documentazione di riferimento per questa API.
Il Add metodo restituisce un oggetto BinaryExpression con 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 Conversion proprietà è null.
Le informazioni seguenti descrivono il metodo di implementazione, il tipo di nodo e se un nodo è sollevato.
Implementazione del metodo
Le regole seguenti determinano il metodo di implementazione selezionato per l'operazione:
- Se la Type proprietà di
leftorightrappresenta un tipo definito dall'utente che esegue l'overload dell'operatore di addizione, MethodInfo che rappresenta tale metodo è il metodo di implementazione. - In caso contrario, se
left.Tipo eright.Tipo sono tipi numerici, il metodo di implementazione ènull.
Tipo di nodo e sollevato rispetto a non sollevato
Se il metodo di implementazione non è null:
Se
left.Tipo eright.Tipo sono assegnabili ai tipi di argomento corrispondenti del metodo di implementazione, il nodo non viene alzato. Il tipo del nodo è il tipo restituito del metodo di implementazione.Se vengono 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. Tipo eright. Tipo sono entrambi tipi 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 valore non annullabile.
-
Se il metodo di implementazione è null:
- Se
left.Tipo eright.Tipo sono entrambi non nullable, il nodo non viene sollevato. Il tipo del nodo è il tipo di risultato dell'operatore di addizione predefinito. - Se
left.Tipo eright.Tipo sono entrambi nullable, il nodo viene sollevato. Il tipo del nodo è il tipo nullable che corrisponde al tipo di risultato dell'operatore di addizione predefinito.