Важно помнить, что каждый раз, когда вы делаете новый постбэк, вы работаете с новым экземпляром класса вашей страницы. Старый экземпляр был отброшен в тот момент, когда он был отправлен в веб-браузер. Имея это в виду, тот факт, что состояние может сохраняться между постбэками вообще, довольно удивителен. Многое должно произойти, чтобы все хорошо синхронизировалось.
Одной из таких вещей является ViewState. ViewState - это специальный скрытый элемент ввода в форме вашей страницы. Когда вы запрашиваете свою страницу с новой строкой запроса, вы больше не размещаете это поле представления состояния из формы. Вы вообще больше не делаете постбэк: это запрос на совершенно новую страницу. Нет данных POST из какой-либо формы, поэтому данные ViewState отсутствуют, и ASP.Net не имеет ни малейшего представления о том, что вы могли сделать ранее.