返回首页

任何人都可以知道吗?

未将对象引用设置到对象的实例。如何解决这个错误?

编码:

protected void btncart_Click(object sender, EventArgs e)

    {

        if (con.State == ConnectionState.Closed)

        {

            con.Open();

        }

        int Quantity = Convert.ToInt32(0);

        if (Quantity == 0)

        {

            Quantity = 1;

        }

        else

        {

            Quantity = Quantity + 1;

        }

        mas_id();

        string pro_id = (((Label)DataList1.Controls[0].FindControl("pro_id")).Text).ToString();

        string pro_name = (((Label)DataList1.Controls[0].FindControl("pro_name")).Text).ToString();

        float Price = float.Parse(((Label)DataList1.Controls[0].FindControl("Price")).Text);

        string pro_img = ((Image)DataList1.Controls[0].FindControl("pro_img")).ImageUrl;

        //int quantity = Convert.ToInt32(((TextBox)DataList1.Controls[0].FindControl("txtquantity")).Text);

        string master_id = (((Label)DataList1.Controls[0].FindControl("master_id")).Text).ToString();//error comes here

        SqlCommand cmd = new SqlCommand("insert into addcart values('" + master_id + "','" + pro_id + "','" + pro_name + "','" + Quantity + "','" + Price + "','" + pro_img + "')", con);

        cmd.ExecuteNonQuery();

        con.Close();

    }

回答

评论会员:游客 时间:2012/02/07
mmdullah下:对象是空的。请初始化它。例如对象o=新对象()
mmdullah
评论会员:游客 时间:2012/02/07
perheps(标签)DataList1.Controls[0]的FindControl("master_id)返回空,而不是你预期勒贝尔控制,|RaisKazi:这多种可能性。在你的代码的错误。以下可能有null值。1)CON2)DataList13)DataList1.Controls[0]4)DataList1.Controls[0]。FindControl的("pro_id)同样适用于其他行的FindControl。调试你的代码,并检查有什么空值,然后声明和初始化正确:YogeshPednekar:尝试{C}yogesh