Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/29.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
System.NullReferenceException(Visual Studio 2012,ASP.NET)_Asp.net_Nullreferenceexception - Fatal编程技术网

System.NullReferenceException(Visual Studio 2012,ASP.NET)

System.NullReferenceException(Visual Studio 2012,ASP.NET),asp.net,nullreferenceexception,Asp.net,Nullreferenceexception,如果这个问题执行得不好,我很抱歉,这是我在这里的第一篇帖子。我承认,我是一个使用Visual Studio和ASP.NET的新手,并且已经忍受了一段时间这个错误 我正在尝试创建一个包含5个问题和5个文本框的表单,您可以在其中填写答案,然后当您单击按钮时,答案将保存在我数据库的表中。问题是,单击按钮后出现错误。这是我的代码: namespace uppg3 { public partial class _default : System.Web.UI.Page {

如果这个问题执行得不好,我很抱歉,这是我在这里的第一篇帖子。我承认,我是一个使用Visual Studio和ASP.NET的新手,并且已经忍受了一段时间这个错误

我正在尝试创建一个包含5个问题和5个文本框的表单,您可以在其中填写答案,然后当您单击按钮时,答案将保存在我数据库的表中。问题是,单击按钮后出现错误。这是我的代码:

namespace uppg3
{
    public partial class _default : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            String minSkola = System.Web.Configuration.WebConfigurationManager.AppSettings["school"];
            Label1.Text = minSkola;
        }

        protected void Button1_Click(object sender, EventArgs e)
        {
            using (svarDatabasEntities datakoppling = new svarDatabasEntities())
            {
                    var nySvar = new Svar();
                    nySvar.svar1 = Box1.Text;
                    nySvar.svar2 = Box2.Text;
                    nySvar.svar3 = Box3.Text;
                    nySvar.svar4 = Box4.Text;
                    nySvar.svar5 = Box5.Text;
                    datakoppling.Svar.Add(nySvar);
                    datakoppling.SaveChanges();
            }
        }
    }
}
这是我收到的错误信息:

“/”应用程序中出现服务器错误

对象引用必须始终保持不变,直到当前为止

描述:在执行过程中发生未处理的异常 当前的web请求。请查看堆栈跟踪以了解更多信息 有关错误的信息及其在代码中的来源

异常详细信息:System.NullReferenceException:OBJEKTREFERENTERSEN har 直到最后一刻,所有的一切都结束了

源错误:

第26行:nySvar.svar4=Box4.Text

第27行:nySvar.svar5=Box5.Text

第28行:datakoppling.Svar.Add(nySvar)

第29行:datakoppling.SaveChanges()

第30行:}

源文件:c:\Users\Ann Helén\Documents\Visual Studio 2012\Projects\uppg3\default.aspx.cs行:28

堆栈跟踪:

[NullReferenceException:ObjektReferences在内部直到外部 instans av ett objekt.]uppg3.\u默认。按钮1\u单击(对象发送器, c:\Users\Ann Helén\Documents\Visual Studio中的事件参数 2012\Projects\uppg3\default.aspx.cs:28
System.Web.UI.WebControls.Button.OnClick(EventArgs e)+158
System.Web.UI.WebControl.Button.RaisePostBackEvent(字符串 事件参数)+174
System.Web.UI.WebControl.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(字符串 eventArgument)+39
System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl,String eventArgument)+37
System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +105 System.Web.UI.Page.ProcessRequestMain(布尔includeStagesBeforeAsyncPoint,布尔includeStagesAfterAsyncPoint) +4411


@奥德:谢谢你的回复!我尝试了你的建议,但不幸的是,我也犯了同样的错误。然而,我现在在节目中注意到了一些东西:

更新:


提出的一个新观点是文本框为空。现在我从其他人那里得到了一个想法,页面加载会重置文本框,并将尝试找到解决方案。谢谢大家的帮助,如果是这样的话,我会用解决方案更新它。

datakoppling.Svar
从未分配给,null也是如此

而不是:

datakoppling.Svar.Add(nySvar);
做:

datakoppling.Svar=new DbSet();
datakoppling.Svar.Add(nySvar);

看起来像
datakoppling.Svar
是null@Justin:它显示第28行,所以
Box5
为空。您能给我们svardatabasenties类的代码吗?特别是Svar的getter,类似于下面的列表Svar{get{some code;}set{some more code;}@Martin:SvarDatabaseEntities是我用来连接数据库的实体框架。SvarDatabaseEntities是数据库中的一个表。我的错,我注意到格式有欺骗性!我编辑了这个问题,让它更清楚第28行是什么;谢谢你的回复!我试过了,但也遇到了同样的错误。我已经用一个链接更新了主帖,指向n电子战发现:@Zarkaylia-从错误中可以清楚地看出,
datakoppling.Svar
是一个
DbSet
,而不是
uppg3.Svar
。答案已更新。它显示第28行,因此
Box5
是null@Oded:不幸的是,它在DbSet上抱怨。@leppie:这意味着它不能正确地获取输入文本,我猜您可能会这样做我在这里。为什么提取文本不起作用,不知道。
datakoppling.Svar = new DbSet<Svar>();
datakoppling.Svar.Add(nySvar);