对象引用未设置为对象的实例,需要帮助

时间:2012-02-24 13:28:44

标签: c# asp.net

我有以下代码

抛出错误“对象引用未设置为对象实例”

TextBox rateCenterName = (TextBox)row.FindControl("txtRateCenterName");
    cmd.Parameters.Add("@RateCenterName", OleDbType.VarChar).Value = rateCenterName.Text;

5 个答案:

答案 0 :(得分:1)

好吧,你还没有说过哪个会抛出异常。选项:

  • row为空
  • rateCenterName为空,表示在row
  • 中找不到控件“txtRateCenterName”
  • cmd为空

这几乎就是它的全部,但我们不可能说出它来自那段代码。在调试器中放置一个断点并找出它是什么......

答案 1 :(得分:0)

rowrateCenterNamecmdnull。你没有给我们足够的信息知道哪些。您需要使用调试器来查找引发异常的行,然后您可以从那里进行调查。您可以使用调试器中的Local或Watch功能在抛出异常时查看每个变量的值。

如果我不得不猜测,rateCenterName为空,因为无法找到名为txtRateCenterName的控件。检查您的名称是否正确。如果不是这样,请检查rowcmd

答案 2 :(得分:0)

由于某种原因,(TextBox)row.FindControl("txtRateCenterName");返回null(最佳猜测)控件可能不存在。

答案 3 :(得分:0)

错误正在告诉您问题的确切原因:您正在尝试使用null的对象引用。

罪魁祸首很可能是row.FindControl("txtRateCenterName"),因为如果FindControl找不到给定的控件,它将返回null。

确保拼写正确,并且它确实存在于页面上。

也可能是你的cmd对象,没有办法从这里说出来。使用调试器。

答案 4 :(得分:0)

它可能在另一个控件中因此无法找到