【问题标题】:how do i fix this error :An unhandled exception of type 'System.NullReferenceException' occurred in DotTeach.exe如何修复此错误:DotTeach.exe 中发生了“System.NullReferenceException”类型的未处理异常
【发布时间】:2017-07-04 22:03:00
【问题描述】:

附加信息:对象引用未设置为对象的实例。

我有这个代码

DotTeachDataSet ds;
DotTeachDataSetTableAdapters.QuestionsTableAdapter ta;

private void button1_Click(object sender, RoutedEventArgs e)
{                                         
    ta.CreateQuestion(discussionQuestion.Text, webPage.Text, choiceA.Text, choiceB.Text, choiceC.Text, choiceD.Text, hint.Text, rightAnswerCbox.Uid);
    ta.Fill(ds.Questions);
}

我用来尝试从 xaml 中的文本框中获取值并将它们发送到数据库,但我一直收到错误:

未处理的类型异常 'System.NullReferenceException' 发生在 DotTeach.exe 中

附加信息:对象 引用未设置为 对象。

Visual Studio 突出显示该行

ta.CreateQuestion(discussionQuestion.Text, webPage.Text, choiceA.Text, choiceB.Text, choiceC.Text, choiceD.Text, hint.Text, rightAnswerCbox.Uid);

有人知道我可以尝试什么吗?

我摆脱了错误消息,但它仍然没有做我需要它做的事情。我试图让它在单击按钮时将数据添加到数据库中。这是我正在使用的功能不起作用

private void button1_Click(object sender, RoutedEventArgs e)
    {
        DotTeach.DotTeachDataSet dotTeachDataSet = ((DotTeach.DotTeachDataSet)(this.FindResource("dotTeachDataSet")));
        DotTeach.DotTeachDataSetTableAdapters.QuestionsTableAdapter dotTeachDataSetQuestionsTableAdapter = new DotTeach.DotTeachDataSetTableAdapters.QuestionsTableAdapter();


        //ADD THE QUESTION TO THE DATA BASE
        dotTeachDataSetQuestionsTableAdapter.CreateQuestion(discussionQuestion.Text, webPage.Text, choiceA.Text, choiceB.Text, choiceC.Text, choiceD.Text, hint.Text, rightAnswer.Text);
    }

我什至不确定还能尝试什么。

【问题讨论】:

    标签: c# visual-studio-2010 oracle-sqldeveloper


    【解决方案1】:

    好吧,要获得NullReferenceException其中一个为空:

    • ta
    • 讨论问题
    • 网页
    • 选择A
    • 选择B
    • 选择C
    • 选择
    • 提示
    • rightAnswerCbox

    我的猜测应该是ta,但您应该能够通过日志记录或调试器找出答案。为ta 分配一个非空值是什么意思?

    这是总是失败(在这种情况下很容易诊断)还是只是有时?

    【讨论】:

    • 我编辑了我的问题,如果您不介意看一下,我将不胜感激。谢谢。
    • @Mike:好的,这证明它不是ta 那是空的。上面列出了许多其他选项。如果您在该行设置断点,请检查列表中的所有变量。哪个是空的?
    【解决方案2】:

    当 VS 在 debug 中突出显示该行时,为什么不尝试将鼠标放在 Jon 提到的每个项目上,然后查看调试信息告诉的内容。确定哪些项目为空,然后调查为什么会这样null.(一定是有原因的!)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-08-03
      • 2015-12-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多