【问题标题】:System.Collections.Specialized.NameValueCollection.this[string].get returned nullSystem.Collections.Specialized.NameValueCollection.this[string].get 返回 null
【发布时间】:2019-02-18 12:57:58
【问题描述】:

我有一个贷方页面,其中显示了数据库中的所有贷方,当我单击显示此错误的按钮时,我可以选择编辑贷方。

System.NullReferenceException: 'Object reference not set to an instance of an object.'

System.Collections.Specialized.NameValueCollection.this[string].get returned null.` 

代码是这样的

ViewState["lender_id"] = lenderid = Convert.ToInt32(Request.QueryString["lender_id"].ToString());

这是我认为的方法

private void Get_lender_data_to_update()
    {
        ViewState["lender_id"] = lenderid = Convert.ToInt32(Request.QueryString["lender_id"].ToString());

        using (dtst = bal.Getlenderedit(lenderid))

        {

            lender_name.Text = dtst.Tables[0].Rows[0]["lender_name"].ToString();
            lender_code.Text = dtst.Tables[0].Rows[0]["lender_code"].ToString();
            //ddlselect.SelectedValue = dtst.Tables[0].Rows[0]["Gender"].ToString();
            manager_name.Text = dtst.Tables[0].Rows[0]["manager_name"].ToString();
            manager_number.Text = dtst.Tables[0].Rows[0]["manager_number"].ToString();
            lc_number.Text = dtst.Tables[0].Rows[0]["lc_number"].ToString();
            manager_email.Text = dtst.Tables[0].Rows[0]["manager_email"].ToString();
            lc_email.Text = dtst.Tables[0].Rows[0]["lc_email"].ToString();
            contact_name.Text = dtst.Tables[0].Rows[0]["contact_name"].ToString();
            designation.Text = dtst.Tables[0].Rows[0]["designation"].ToString();
            branch_name.Text = dtst.Tables[0].Rows[0]["branch_name"].ToString();
            branch_add.Text = dtst.Tables[0].Rows[0]["branch_add"].ToString();
            branch_add2.Text = dtst.Tables[0].Rows[0]["branch_add2"].ToString();
            branch_city.Text = dtst.Tables[0].Rows[0]["branch_city"].ToString();
            branch_state.Text = dtst.Tables[0].Rows[0]["branch_state"].ToString();
            branch_zip.Text = dtst.Tables[0].Rows[0]["branch_zip"].ToString();
            branch_country.Text = dtst.Tables[0].Rows[0]["branch_country"].ToString();


        }

    }

这是我的 bal.Getlenderedit

public DataSet Getlenderedit(int lenderid)
    {
        return dal.Getlenderedit(lenderid);
    }

这是我的 dal.Getlenderedit

public DataSet Getlenderedit(int lenderid)
    {
        try
        {
            cmd.Parameters.Clear();
            cmd.Parameters.AddWithValue("@lenderid", lenderid);
            DataSet lenderedit = dbmngr.ExecuteAdapter(cmd, CommandType.StoredProcedure, "editlender");
            return lenderedit;
        }
        catch (Exception ex)
        {

            throw ex;
        }
    }

【问题讨论】:

  • QueryString 似乎不包含lender_id
  • @John 我在哪里可以找到查询字符串我是编码新手请帮助
  • 也许你可以展示你的方法?通常您可以接受查询字符串参数作为方法参数。无论哪种方式,如果客户端将其发送到服务器,我都希望看到该对象上存在一个查询字符串参数。
  • 我更新了一段我认为是方法的代码

标签: c# asp.net


【解决方案1】:

谢谢@john 我已经解决了这个问题

我觉得这很有趣,我刚刚从这行代码中删除了“_”

ViewState["lender_id"] = lenderid = Convert.ToInt32(Request.QueryString["lender_id"].ToString());

lender_id 更改为lenderid

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-11
    • 2014-07-14
    • 2011-11-18
    • 2022-12-29
    相关资源
    最近更新 更多