C # отключить viewstate, но все еще использовать ViewState ["item"] - PullRequest
0 голосов
/ 02 марта 2012

Возможно ли это, я установил в файле webconfig.Однако пара веб-элементов управления использует ViewState ["item"]. ToString (), который теперь выдает следующую ошибку:

Object reference not set to an instance of an object.

Я попытался просто установить EnableViewState = "true" в заголовке вебконтроль, но все равно получаю ту же ошибку.Есть ли способ обойти это?

Ответы [ 2 ]

2 голосов
/ 02 марта 2012

См. Здесь: http://forums.asp.net/t/1378945.aspx/1

Вам необходимо включить его в заголовке страницы, а не в элементе управления.

РЕДАКТИРОВАТЬ: Согласно http://forums.asp.net/t/1536937.aspx/1 вы можетенеобходимо включить его на уровне web.config и отключить для каждой страницы, где вы этого не хотите.

0 голосов
/ 02 марта 2012

Если ViewState ["Item"] никогда не был установлен, то при вызове

ViewState ["Item"]. ToString ();

вы фактически вызываете null.ToString ();

, поэтому вам нужно сначала проверить на null - или же всегда установить его.

Вы можете использовать что-то вроде:

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