为什么 Textarea.Innertext 给了我空点异常

本文关键字:异常 Textarea Innertext 为什么 | 更新日期: 2023-09-27 18:34:15

<textarea id="TextAreaSend" runat="server" name="SendText">

我创建了文本区域来写一些东西。并将它保存到数据库中,并使用linq到实体。

if (!String.IsNullOrEmpty(TextAreaSend.InnerText))
        {
            int ticketno = Convert.ToInt32(ViewState["TicketNo"]);
            var source = from tickettext in entities.Tickets
                         where tickettext.TicketNo == ticketno
                         select tickettext;
            Ticket ticket = source.Single();
//This is where null point exception is
            ticket.Answer.AnswerText = TextAreaSend.InnerText;
            entities.SaveChanges();
        }

票。Answer.AnswerText = TextAreaSend.InnerText;在这一行中,我收到;

对象引用未设置为对象的实例。为什么?我该如何解决它?

为什么 Textarea.Innertext 给了我空点异常

如果在对

TextAreaSend.InnerText执行 null 或空检查时它没有在该代码的第一行失败,那么在读取分配给 AnswerText 的属性值时,它不会出于同样的原因失败。

ticket也不能在此处null,因为如果查询返回 0 或超过 1 个Ticket,您将收到不同的异常。

我们剩下的是ticket.Answer可能是这里null的项目,而不是ticketTextAreaSend 。您正在尝试写入null的对象上的属性。

当您

调用"源"时,我会检查返回的实体数量。单()"。 如果在使用"Single()"时返回多个实体或未返回任何实体,则可能会引发异常。 此外,如果使用"SingleOrDefault()",则可以在继续执行其余代码之前检查 null。