我在那条线上遇到了一个例外。我的编码是正确的,但仍然出现错误。谁能帮我重写该特定行的代码。我正在使用该行来查看从数据库到文本框的值。getprogress 是来自 web 服务的方法名称。
问问题
4454 次
6 回答
1
的值menuitemno.Text
类似于 32.64(有小数),因此无法使用 convert.toint 将小数转换为整数。
用于Convert.ToInt64(Convert.ToDouble(menuitemno.Text))
转换。
要进行此折扣舍入,您可以执行以下操作:
Convert.ToInt64(Math.Floor(Convert.ToDouble(menuitemno.Text)));
如果你需要四舍五入,你可以Math.Floor
用Math.Round
.
Convert.ToInt64(Math.Round(Convert.ToDouble(menuitemno.Text)));
如果值为menuitemno.Text
空或具有无效字符,则错误也可能出现。
如果您现在允许在menuitemno.Text
then 中使用小数位Int64.TryParse
于 2012-05-23T07:32:34.360 回答
1
int result;
if(int.TryParse( menuitemno.Text, out result))
progress = web.getprogress(result);
else
//You have incorrect integer in menuitemno.Text
于 2012-05-23T07:28:30.707 回答
0
使用 RadTextBox 时无需解析任何整数值
Hashtable newval = new Hashtable();
int Age = Convert.ToInt32(newval["Age"].ToString());
于 2014-01-02T12:00:41.537 回答
0
似乎 menuitemno 不是可以转换为整数的有效字符串。只需检查 menuitemno.Text 的值,我怀疑它没有整数值。右键单击“menuitemno.Text”并选择快速观看;它将显示价值。
于 2012-05-23T07:27:52.457 回答
0
文本框的值,很可能是inull
或empty
,要修复此问题,假设这些值在可接受的范围内,您可以执行以下操作:
int i =0;
int.TryParse(menuitemno.Text, out i);
progress = i;
像这样的东西。
于 2012-05-23T07:28:17.683 回答
0
menuitemno 是文本框吗?如果它只接受数字,您应该使用 numericupdown。这样您就不必转换为数字,并且可以很容易地应用限制,例如不允许小数位。
于 2012-05-23T07:36:59.633 回答