问题如下:
项目首先用户要登陆,然后将登陆用户的名字保存到session中
登陆成功后跳转到显示数据界面,数据的显示是根据用户的名字而定的,也就是session中的值。
数据的绑定我用的是gridview,在模板中加入了删除按钮。
问题是,我删除一条数据,可以顺利的删除,如果紧接着删除另外一条数据的话,就会报错:
未将对象引用设置到对象的实例。
也就是session中的值为空了,请问怎么解决这样的问题啊???
高手帮忙分析下,谢谢!protected void Page_Load(object sender, EventArgs e)
{
if(!IsPostBack)
{
BindMission();
BindLedName();
}
} private void BindMission()
{
string UserName = Session["UserName"].ToString();
DataSet ds1 = oper.BindMs(UserName);
GVMission.DataSource = ds1.Tables["任务表"];
GVMission.DataBind();
protected void GVMission_RowDeleting(object sender, GridViewDeleteEventArgs e)
{
string MissionName = GVMission.Rows[e.RowIndex].Cells[0].Text;
oper.DelectMission(MissionName);
BindMission();
}主要代码如下
项目首先用户要登陆,然后将登陆用户的名字保存到session中
登陆成功后跳转到显示数据界面,数据的显示是根据用户的名字而定的,也就是session中的值。
数据的绑定我用的是gridview,在模板中加入了删除按钮。
问题是,我删除一条数据,可以顺利的删除,如果紧接着删除另外一条数据的话,就会报错:
未将对象引用设置到对象的实例。
也就是session中的值为空了,请问怎么解决这样的问题啊???
高手帮忙分析下,谢谢!protected void Page_Load(object sender, EventArgs e)
{
if(!IsPostBack)
{
BindMission();
BindLedName();
}
} private void BindMission()
{
string UserName = Session["UserName"].ToString();
DataSet ds1 = oper.BindMs(UserName);
GVMission.DataSource = ds1.Tables["任务表"];
GVMission.DataBind();
protected void GVMission_RowDeleting(object sender, GridViewDeleteEventArgs e)
{
string MissionName = GVMission.Rows[e.RowIndex].Cells[0].Text;
oper.DelectMission(MissionName);
BindMission();
}主要代码如下
解决方案 »
- 简单的问题
- 大家有没有简洁的轮换鼠标方式
- 求助:TextBox改变后点击 Button!希望跳过Button事件,直接刷新到PageLoad
- ASP.NET2 (C#)做WEBFORM的B/S程序自动刷新问题
- ==========国庆节先骂老板,再请教大哥们问题,再散分100?????
- asp.net(c#)水晶报表实现后怎样把显示的报表放大?
- 哪里有asp.net 和 c# 结合的书? 紧急求救!我找了几本书里面的实例都是用vb.net写的!
- 请教!关于Visual Studio 2005安装ASP.NETAJAX1.0问题!
- 查询数据等待过程中,可否设定显示一个动画,类似window的那种
- 是学c#好呢 还是java
- ' ' 和" " 问题
- SelectedChanged事件问题
如过是每次都丢失,一般是你删除的代码中把Session["UserName"]释放了
分析Session丢失原因,主要是因为站点目录文件更新导致应用程序重启,并且重新分配内存,所以保存在内存中的session自然会丢失。
实际上在。net中,session主要有一些几种存储方式:
<sessionState mode="InProc"></sessionState>//保存在内存中
<sessionState mode="SQLServer"></sessionState>//保存在数据库中
<sessionState mode="StateServer"></sessionState>//保存在进程中(ASP.NET 状态服务)
要解决Session丢失的问题,可以选择将其保存到数据库或状态服务中。
参考
http://www.cnblogs.com/crescens/articles/1100478.html
你这很明显的造成每次一加载就丢失
{
string MissionName = GVMission.Rows[e.RowIndex].Cells[0].Text;
oper.DelectMission(MissionName);
BindMission();
}
应该是这事件的问题,你看下直接在按纽事件里写删除程序看下.
不行的话试试在网页上隐藏一个控件保存数据,或使用viewstate再试试
未将对象引用设置到对象的实例。
也就是session中的值为空了,请问怎么解决这样的问题啊???
高手帮忙分析下,谢谢! 我感觉不一定是Session丢失,上面说的前两句和后一句没有必然的因果关系,跟踪一下试试。