To do this discounting rounding you could do:
Convert.ToInt64(Math.Floor(Convert.ToDouble(value)));
If you need to round you could replace Math.Floor
with Math.Round
.
Edit: Since you mentioned in a comment that you'll be rounding:
Convert.ToInt64(Math.Round(Convert.ToDouble(value)));
If you have to worry about localization/globalization then as @xls said you should apply a CultureInfo in the conversions.
Edit 2: Alternative method using a string function (not terribly elegant IMO - maybe it could be elegantized with a predicate function):
Convert.ToInt64(value.Substring(0, value.IndexOf('.') > 0 ? value.IndexOf('.') : value.Length));
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…