为什么我得到这个System.NullReferenceException?

时间:2010-06-23 08:44:21

标签: c# .net asp.net nullreferenceexception

我遇到了一个奇怪的错误。我有以下前端代码:

<%@ Page Title="" Language="C#" MasterPageFile="~/nokernok/MasterPages/nokernok.Master" AutoEventWireup="true" CodeBehind="articleList.aspx.cs" Inherits="development.nokernok.articleList" %>
<%@ Register TagPrefix="EPiServer" Namespace="EPiServer.WebControls" Assembly="EPiServer" %>

<asp:Content ID="Content2" ContentPlaceHolderID="LeftContentPlaceHolder" runat="server">    
    <asp:Label ID="lblTest" runat="server" />    
</asp:Content>

我有以下后端代码:

using System;
using System.Web;
using EPiServer;
using EPiServer.Core;
using development.NaafLibrary;

namespace development.nokernok
{
    public partial class articleList : TemplatePage
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            lblTest.Text = "TEEEEEEEEEEEST";    
        }
    }
}

设计师档案:

namespace development.nokernok {
    public partial class articleList {        
       protected global::System.Web.UI.WebControls.Label lblTest;
    }
}

我收到这条错误消息:

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

[NullReferenceException: Object reference not set to an instance of an object.]
development.nokernok.articleList.Page_Load(Object sender, EventArgs e) in C:\Inetpub\wwwroot\naaf\nokernok\articleList.aspx.cs:17
System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e) +14
System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) +35
System.EventHandler.Invoke(Object sender, EventArgs e) +0
System.Web.UI.Control.OnLoad(EventArgs e) +99
System.Web.UI.Control.LoadRecursive() +50
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +627

我有其他模板可以正常工作。 我只是无法理解为什么我在这里得到这个错误。

更新1

我刚刚添加了一些代码。

3 个答案:

答案 0 :(得分:3)

检查相关的.aspx.designer.cs是否有

protected global::System.Web.UI.WebControls.Label lblTest;

答案 1 :(得分:2)

谢谢你的帮助。

我现在就开始工作了。我删除了文件并创建了一个新文件。然后我逐行添加。

我仍然不知道出了什么问题。看一下代码,这一切看起来和我刚开始时的情况差不多。

答案 2 :(得分:1)

它是一个Web应用程序项目(不是网站项目)吗?如果是(否),请删除*.designer.cs,之后 - 在*.as*x文件(您的页面或控件)的上下文菜单中 - &gt; Convert to web application