C#禁用viewstate但仍然使用ViewState [“item”]

时间:2012-03-02 16:58:28

标签: c# .net viewstate

这是可能的,我已经设置了webconfig文件。 但是,一些Web控件使用ViewState [“item”]。ToString(),现在抛出以下错误:

Object reference not set to an instance of an object.

我尝试在Web控件的标题中设置EnableViewState =“true”,但仍然会收到相同的错误。有没有办法解决这个问题?

2 个答案:

答案 0 :(得分:2)

见这里:http://forums.asp.net/t/1378945.aspx/1

您需要在页面标题中打开它,而不是控件。

编辑:根据http://forums.asp.net/t/1536937.aspx/1,您可能需要在web.config级别启用它,并为您不希望它的每个页面禁用它。

答案 1 :(得分:0)

如果从未设置过ViewState [“Item”],那么当你打电话时

的ViewState [ “项”]的ToString();

你实际上正在调用null.ToString();

所以你需要先检查一下 - 或者总是设置它。

您可以使用以下内容:

var item = ViewState["Item"];
string s = item == null ? string.Empty() : item.ToString();