Qualcuno può pensare a buon modello ReSharper che rileverà il seguente errore:modello ReSharper per rilevare l'aritmetica con i tipi nullable
decimal? x = null;
decimal? y = 6M;
var total = x + y;
Console.WriteLine(total); // Result is null
Ho cercato di creare un modello, ma non riesco a capire come gestire rapidamente tutti i tipi di aritmetica (ad es. +, -, * ecc.) e qualsiasi tipo annullabile (e.g. Nullable<int>, Nullable<decimal>, Nullable<double> etc
). Inoltre, non posso gestire la commutatività (ad es. Dovrebbe rilevare x + y e y + x).
Nota che non è necessario determinare se x è effettivamente nullo: solo se si tratta o meno di un tipo nullable. Voglio forzare gli sviluppatori a scrivere: x.Value + y.Value.
erm nullable è solo una classe generica. Nullable Struttura perché non fanno di questo modello thingy su: "Nullable " –
Nahum
E non verificare la presenza di una x + modello 'y', ma cercare un' 'Nullable che è stato sicuramente assegnato con' null' e non ha nessuno di '+', '-',' * ','/','^',' * ',' ~ ',' <<','>> 'a sinistra oa destra di esso (o' - = ' , '+ =', ... a sinistra). –
SimpleVar
@Nahum Non funziona. – cbp