| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1875 人关注过本帖
标题:关于string“null”转换为int型的0
只看楼主 加入收藏
fyz520
Rank: 1
等 级:新手上路
帖 子:120
专家分:1
注 册:2010-1-27
结帖率:95.12%
收藏
已结贴  问题点数:10 回复次数:4 
关于string“null”转换为int型的0
protected void Button2_Click(object sender, EventArgs e)
    {
        DB db=new DB();
        for (int i = 0; i < GridView1.Rows.Count; i++)
        {
            GridViewRow gRow = GridView1.Rows[i];
            string cj1 = ((Label)GridView1.Rows[i].Cells[0].FindControl("label1")).Text;
            string cj2 = ((Label)GridView1.Rows[i].Cells[3].FindControl("label2")).Text;
            string cj3 = ((Label)GridView1.Rows[i].Cells[6].FindControl("label3")).Text;

            if (cj1!=null)
            {
                string chengji1 = ((TextBox)gRow.FindControl("TextBox1")).Text;

                if (chengji1 == "0" || chengji1 == null)
                {
                    chengji1 = "0";
                }
                string sqlstr1 = "update chengji set chengji=" + Convert.ToInt32(chengji1) + "where xuehao=" + Convert.ToInt32(cj1) + " and xueke='" + Convert.ToString(ViewState["xueke"]) + "' and xueqi=" + Convert.ToInt32(ViewState["xueqi"]) + " and haoxu=" + Convert.ToInt32(ViewState["haoxu"]);
                db.sqlex(sqlstr1);
            }
            if (cj2!=null)
            {
                 string chengji2 = ((TextBox)gRow.FindControl("TextBox2")).Text;
                 if (chengji2 == "0" || chengji2 == null)
                 {
                     chengji2 = "0";
                 }
                 string sqlstr2 = "update chengji set chengji=" + Convert.ToInt32(chengji2) + "where xuehao=" + Convert.ToInt32(cj2) + " and xueke='" + Convert.ToString(ViewState["xueke"]) + "' and xueqi=" + Convert.ToInt32(ViewState["xueqi"]) + " and haoxu=" + Convert.ToInt32(ViewState["haoxu"]);
                 db.sqlex(sqlstr2);
            }
            if (cj3!=null)
            {
                 string chengji3 = ((TextBox)gRow.FindControl("TextBox3")).Text;
                 if (chengji3 == "0" || chengji3 == null)
                 {
                     chengji3 = "0";
                 }
                 string sqlstr3 = "update chengji set chengji=" + Convert.ToInt32(chengji3) + "where xuehao=" + Convert.ToInt32(cj3) + " and xueke='" + Convert.ToString(ViewState["xueke"]) + "' and xueqi=" + Convert.ToInt32(ViewState["xueqi"]) + " and haoxu=" + Convert.ToInt32(ViewState["haoxu"]);
                 db.sqlex(sqlstr3);
            }
        }
        Response.Write("<script>alert('数据保存成功');</script>");
    }

如果文本框的植为空的话红色部分sql语句会提示出错,我对文本框里的值作了判断,为空就赋予“0”,可是我知道Convert.ToInt32(chengji3)这样也是会有问题的,怎么办啊?chengji表里的字段chengji为int型,允许空值。。

[ 本帖最后由 fyz520 于 2010-12-6 09:29 编辑 ]
搜索更多相关主题的帖子: null int string 
2010-12-06 09:15
wangnannan
Rank: 18Rank: 18Rank: 18Rank: 18Rank: 18
等 级:贵宾
威 望:87
帖 子:2546
专家分:9359
注 册:2007-11-3
收藏
得分:0 
 Convert.ToInt32(cj3) + " and xueke='" + Convert.ToString(ViewState["xueke"]) + "' and xueqi=" + Convert.ToInt32(ViewState["xueqi"]) + " and haoxu=" + Convert.ToInt32(ViewState["haoxu"]);
你看看这几个要转换的变量除了"0"还有没有""  ""也会出错的 跟个断点 把执行后的sql文贴出来

出来混,谁不都要拼命的嘛。 。拼不赢?那就看谁倒霉了。 。有机会也要看谁下手快,快的就能赢,慢。 。狗屎你都抢不到。 。还说什么拼命?
2010-12-06 09:17
fyz520
Rank: 1
等 级:新手上路
帖 子:120
专家分:1
注 册:2010-1-27
收藏
得分:0 
Convert.ToInt32(cj3) + " and xueke='" + Convert.ToString(ViewState["xueke"]) + "' and xueqi=" + Convert.ToInt32(ViewState["xueqi"]) + " and haoxu=" + Convert.ToInt32(ViewState["haoxu"]);
我确定这里没有错的,我调试过了
只要Convert.ToInt32(chengji3)这里不为空就没有错,我想判断当文本框的值为""空时,就把整形的0赋给它
2010-12-06 09:32
wangnannan
Rank: 18Rank: 18Rank: 18Rank: 18Rank: 18
等 级:贵宾
威 望:87
帖 子:2546
专家分:9359
注 册:2007-11-3
收藏
得分:10 
你可以判断一下chengji3.trim()是否为"" 然后赋值"0"就可以了

出来混,谁不都要拼命的嘛。 。拼不赢?那就看谁倒霉了。 。有机会也要看谁下手快,快的就能赢,慢。 。狗屎你都抢不到。 。还说什么拼命?
2010-12-06 09:36
fyz520
Rank: 1
等 级:新手上路
帖 子:120
专家分:1
注 册:2010-1-27
收藏
得分:0 
对了,谢谢!原来chengji3的值""和"0"是不一样的
2010-12-06 09:41
快速回复:关于string“null”转换为int型的0
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.013171 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved