C# System.FormatException未由用户代码处理
转换池ID以显示错误时,我正在hdnfield中发送池ID。poolid是C# System.FormatException未由用户代码处理,c#,exception,formatexception,C#,Exception,Formatexception,转换池ID以显示错误时,我正在hdnfield中发送池ID。poolid是int32datatype if (ddlStaticPoolName.Visible) { objUserEntity.POOLNAME = Convert.ToString(ddlStaticPoolName.SelectedItem.Text); objUserEntity.POOlID = Convert.ToInt32(ddlStaticPoolName.Selected
int32
datatype
if (ddlStaticPoolName.Visible)
{
objUserEntity.POOLNAME = Convert.ToString(ddlStaticPoolName.SelectedItem.Text);
objUserEntity.POOlID = Convert.ToInt32(ddlStaticPoolName.SelectedValue);
}
else if (lblDynamicPoolName.Visible)
{
objUserEntity.POOLNAME = Convert.ToString(lblDynamicPoolName.Text);
objUserEntity.POOlID =Convert.ToInt32(hdnDynamicPoolID.Value);
}
else
{
objUserEntity.POOLNAME = "";
objUserEntity.POOlID = 0;
}
如果字符串包含数字字符但不是整数(例如:双精度、十进制)
如果字符串包含双精度数字,则无法直接转换为Int。如果这不能解决问题,则必须给出ddlStaticPoolName.SelectedValue
的示例
如果字符串包含非数字字符。那你应该用特里帕司
如果字符串包含无效的数字。TryParse将num
的值设置为0。否则为从字符串转换的值
如果你尝试这个解决方案,其中一个一定能解决你的问题。但是,请尝试第一种解决方案,然后转到下一种解决方案。能否显示要转换为int32的string
ddlStaticPoolName.SelectedValue
的示例?哪些行在if或else if中出现错误,请指出它是SelectedValue empty string?将空字符串转换为Int32
失败检查此:Convert.ToInt32(“”
感谢M.kazem Akhgary的帮助第二个解决方案对我很有帮助。欢迎您。如果回答了您的问题,您可以接受此答案。
objUserEntity.POOlID = Convert.ToInt32(Convert.ToDouble(ddlStaticPoolName.SelectedValue));
int num;
Int32.TryParse(ddlStaticPoolName.SelectedValue, out num);
objUserEntity.POOlID = num;