我已经在网上搜索了一个解决方案,这似乎是一个非常简单的问题,但每当我尝试将变量保存到会话变量时,我都会得到一个空引用异常。以下是我的代码。当我到达 SaveTreeView 方法时,我得到空引用异常。 quickwatch调试器显示正确的值。我已经尝试将任意对象分配给列表,这也不起作用。有什么想法吗?
private TreeViewState state;
protected void Page_Load(object sender, EventArgs e)
{
string[] roles = Roles.GetRolesForUser(User.Identity.Name);
if (roles.Count() != 0)
{
var service = new TreeMapService();
List<TreeStructure> treeMap = new List<TreeStructure>();
//treeMap = service.GetTreeMap(roles[0]);
//int me = treeMap.First().ChildNode.ID;
state.SaveTreeView(treeMap);
AddChildren(null, TreePanelMain, null, state.GetTreeView());
}
}
答案 0 :(得分:2)
state
无论如何都没有初始化,因此作为类成员,它是null是默认值。你需要这样的东西:
state = new TreeViewState();
state.SaveTreeView(treeMap);