又遇到问题了~~~~!!!!关于网页计数器的!!!
问题是,在VS08下可以运行第一次,但是第二次就不行了!!!求助求助!!代码如下:
public partial class WebForm1 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
//第一次进入页面,Application对象赋值为1
if (Application["userNumber"] ==null)
{
Application["userNumber"] = 1;
}
else
{
Application.Lock();//防止其他用户在同一时刻对Application对象值进行修改
//Application对象值在原来的基础上+1
Application["userNumber"] = (int)Application["uerNumber"] + 1;
Application.UnLock();//允许其他用户对Application对象值进行修改
}
Response.Write("本网页已被" + Application["userNumber"] + "人访问了");
}
}
}
第一次可以成功,但是再按F5,就出现错误: “/”应用程序中的服务器错误。 未将对象引用设置到对象的实例。 说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.NullReferenceException: 未将对象引用设置到对象的实例。
源错误:
行 28: Application.Lock();//防止其他用户在同一时刻对Application对象值进行修改行 29: //Application对象值在原来的基础上+1行 30: Application["userNumber"] = (int)Application["uerNumber"] + 1;行 31: Application.UnLock();//允许其他用户对Application对象值进行修改行 32: }
源文件: C:\Users\ycll\Documents\Visual Studio 2008\Projects\WebApplication1\WebApplication1\WebForm1.aspx.cs 行: 30
堆栈跟踪:
WebApplication1.WebForm1.Page_Load(Object sender, EventArgs e) in C:\Users\ycll\Documents\Visual Studio 2008\Projects\WebApplication1\WebApplication1\WebForm1.aspx.cs:30 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.Web.UI.Control.OnLoad(EventArgs e) +99 System.Web.UI.Control.LoadRecursive() +50 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +627
版本信息: Microsoft .NET Framework 版本:2.0.50727.4971; ASP.NET 版本:2.0.50727.4971
问题解决了,~~~谢谢~~~哎呀,自己的问题~~~没事了;~~~~ {:5_109:}什么事情 都要自己先研究透了实在没办法再问别人。 那样效果好。 hackbs 发表于 2012-11-1 11:43 static/image/common/back.gif
什么事情 都要自己先研究透了实在没办法再问别人。 那样效果好。
嗯,是,我是研究好久 了,然后清空了下大脑,然后就找到了问题~~~
页:
[1]