输入字符串的格式不正确。
输入字符串的格式不正确。
说明: 执行当前 Web 请求期间,出现未经处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.FormatException: 输入字符串的格式不正确。
源错误:
行 166: float sum1 = 0, sum2 = 0, sum3 = 0, sum4 = 0, sum5 = 0, sum6 = 0, sum7 = 0;
行 167: for (int j = 0; j < tempdt.Rows.Count; j++) {
行 168: sum1 += float.Parse(tempdt.Rows[j]["本科教学与人才培养"].ToString());
行 169: sum2 += float.Parse(tempdt.Rows[j]["国际交流与合作"].ToString());
行 170: sum3 += float.Parse(tempdt.Rows[j]["研究生教学与人才培养"].ToString());
源文件: e:\KPISystem\KPISystem1103_02\User\Default.aspx.cs 行: 168
堆栈跟踪:
[FormatException: 输入字符串的格式不正确。]
System.Number.ParseSingle(String value, NumberStyles options, NumberFormatInfo numfmt) +398
System.Single.Parse(String s) +23
User_Default.bindFirstIndicatorGridView() in e:\KPISystem\KPISystem1103_02\User\Default.aspx.cs:168
User_Default.Page_Load(Object sender, EventArgs e) in e:\KPISystem\KPISystem1103_02\User\Default.aspx.cs:29
System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) +51
System.Web.UI.Control.OnLoad(EventArgs e) +92
System.Web.UI.Control.LoadRecursive() +54
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +772
------解决方案--------------------错误在这里:
User_Default.bindFirstIndicatorGridView() in e:\KPISystem\KPISystem1103_02\User\Default.aspx.cs:168
User_Default.Page_Load(Object sender, EventArgs e) in e:\KPISystem\KPISystem1103_02\User\Default.aspx.cs:29
上面已经给行号了,按行号去查排除错误.
还有想问下为什么字段用中文呢?这不是自找麻烦吗
------解决方案--------------------数据库中你这个字段中的内容有null值,转换当然报错了
做下转换如下:
sum1 += float.Parse(string.IsNullOrEmpty(tempdt.Rows[j]["本科教学与人才培养"].ToString())?"0":tempdt.Rows[j]["本科教学与人才培养"].ToString());