Единственная реальная возможность хранить большие объемы данных на стороне клиента - использовать ViewState
. Он будет существовать только на странице, к которой вы добавляете его. Так что, если вы прыгаете со страницы на страницу, это не сработает. В этом случае вы действительно должны использовать Session
или Application Cache
в зависимости от вашего сценария.
Так что, если вы делаете что-то, где вы всегда находитесь на одной странице и просто делаете много PostBacks
для таких вещей, как разбиение на страницы или сортировку, то ViewState
будет работать нормально, но вы поймете, что вы будете передавать большие объемы данных обратно вперед на сервер каждый раз, когда PostBack
.
Например:
// Set it
ViewState["YourData"] = yourDataSet;
// Get it
DataSet ds = ViewState["YourData"] as DataSet;
Session
и Application Cache
доступны одинаково. Просто замените ViewState
словом Session
или Cache
.
Более подробную информацию о 3 методах можно найти в MSDN:
- ViewState
- Session
- Кэш приложения
Возможно, вы также захотите проверить следующие ссылки:
Преимущества Cache против Session
Состояние сеанса v ViewState
http://www.codeproject.com/KB/aspnet/PTCacheSessionViewState.aspx