Какое оптимальное значение для maxPageStateFieldLength в ASP.NET - PullRequest
10 голосов
/ 06 апреля 2010

На страницах с состоянием просмотра, которое охватывает 10-15 КБ, что было бы оптимальным значением для

<pages maxPageStateFieldLength="">

в файле web.config для уменьшения риска потенциального усечения, приводящего к ошибкам проверки состояния представления?

Ответы [ 2 ]

1 голос
/ 06 апреля 2010

maxPageStateFieldLength не ограничивает размер состояния просмотра, поэтому оно не будет усечено.

То, что он делает, просто контролирует, какая часть состояния просмотра будет помещена в одно скрытое поле. Если состояние просмотра больше значения maxPageStateFieldLength, состояние просмотра будет просто разделено на несколько скрытых полей.

Значение по умолчанию -1, означающее, что состояние просмотра помещается в одно скрытое поле, которое обычно является наиболее оптимальным.

0 голосов
/ 14 февраля 2011

В настоящее время я сталкиваюсь с проблемой, когда мы получаем ошибки «HttpException из-за недопустимого состояния просмотра» только для пользователей Firefox. Я также вижу «Исключение System.Web.HttpException: при соединении с удаленным хостом произошла ошибка. Код ошибки 0x80070001» связан с исключениями состояния просмотра.

Я считаю, что у firefox, возможно, есть максимальный размер (возможно) скрытых полей формы - мне нужно это проверить. Теперь я хочу разделить состояние представления с помощью maxPageStateFieldLength, чтобы, надеюсь, разрешить его (в краткосрочной перспективе). Более долгосрочное решение состоит в том, чтобы реорганизовать страницу aspx, чтобы выполнить пейджинговый запрос для сетки (вместо того, чтобы сносить все строки за один раз - что не очень хорошая вещь).

ИМХО, вы должны поставить максимум, который достаточно велик, но не неограничен. Я бы сказал, 1 МБ это начало.

...