1
请原谅我问一个世俗的新手问题,但我似乎被困在一个阶级生命周期的束缚。加载页面加载视图状态,保存在页面卸载(从基类) - C#Asp.net
所以,我有我的网页
public partial class DefaultPage : BasePage
{
...
}
而且BasePage的是这样的:
public class BasePage : System.Web.UI.Page
{
private Model _model;
public BasePage()
{
if (ViewState["_model"] != null)
_modal = ViewState["_model"] as Modal;
else
_modal = new Modal();
}
//I want something to save the Modal when the life cycle ends
[serializable]
public class Model
{
public Dictionary<int, string> Status = new Dictionary<int, string>();
... //other int, string, double fields
}
public class PageManager()
{ //code here; just some random stuff
}
}
现在我只是想获得模态在页面加载,这是我从构造函数来完成。 如何在页面卸载时将其保存?我不能使用析构函数,因为它不可靠。
此场景的最佳解决方案是什么?
谢谢。
嗨,这是伟大的,但每次访问我的''_model''它回来与未设置为实例''对象引用...''例外? – LocustHorde
@LocustHorde:_model从一个空值开始,直到你将其设置为其他值时,它将继续为null。你在哪里设置'_model'的值?你在哪里尝试访问它?你能设置断点来确定这些事件何时发生与LoadViewState和SaveViewState被调用有关吗? – StriplingWarrior
好的,我的错误,我没有将它设置为任何页面加载。谢谢你们,你们帮助我的次数超过了我的数量! – LocustHorde