Вопрос

Я создаю приложение в ASP.NET 2.0, и значение состояния просмотра огромно:

<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwULLTExNz...

Значение содержит 535 000 символов. Это нормально? Как я могу сделать его меньше?

Это было полезно?

Решение

Просмотрите включение трассировки ASP.NET для ваших веб-страниц - это скажет вам, какие элементы управления хранят, сколько в состоянии просмотра. Затем вы можете отключить состояние просмотра для элементов управления, которые, как вы знаете, не используют его.

Другие советы

ViewState может стать для вас безобразным. По сути, я бы сказал, что проблема в том, что ViewState включен по умолчанию для всего, и много вещей не нужно, чтобы это было. Самый простой пример - объекты Label.

Попробуйте отключить ViewState там, где он вам не нужен (EnableViewState - это свойство, которое вы ищете).

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

Здесь я написал об этом некоторое время назад.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top