Ich vermute mal, dass die Division durch eine Ganzzahl hier zusätzliche Verwirrung bringt. Ich mach's oft so:
Code:
someVal = (int)Math.Round(obj.IntProperty / 2.0);
das ".0" ist der wichtige Part hier, durch den die Division ein Double-Ergebnis liefert und damit eindeutig ist. Auch ginge es mit dem Suffix "f" hinter der 2, was dann in einem Single (float) resultieren würde.
Edit: Was man als Delphianer erstmal verinnerlichen muss ist, dass "/" bei Divisionen von zwei Ganzzahltypen dem "div" aus Delphi entspricht. Er wird aber zu einem Fließkomma-Operator, sobald eine solche beteiligt ist. Das Ergebnis des Operators entspricht dem genausten an der Division beteiligten Operanden, und nicht mehr.
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)