Я несколько не согласен с ответом Basiclife; если у вас есть код внутри что-то вроде
if (IsPostBack) {
это не будет эквивалентно, то есть код будет выполняться, если вы просто устанавливаете URL. Кроме того, элементы управления сохраняют свое состояние в постбэках, но заново инициализируются, если вы снова вызываете URL. Это связано с тем, что ASP.NET пытается эмулировать «нормальное» приложение, поэтому способ обеспечить одинаковый эффект обычного вызова и обратной передачи может привести к «де-ASP.NET-ванию» всей страницы.
Я не уверен, работает ли то, что вы хотите. Там, вероятно, есть способ. Но я сильно подозреваю, что есть лучший способ сделать это. Если вы получаете обратную передачу бесплатно и можете передавать данные, почему важно, чтобы данные отображались в URL-адресе, а не размещались в удобной форме? Я могу видеть, как вы хотите, чтобы страница реагировала на параметр URL, и как вы могли бы впоследствии захотеть изменить этот параметр в зависимости от того, что происходит на этой странице, но, поскольку вы всегда знаете, что отправляете ответ, вы можете, например, переопределить этот параметр URL в этом случае, что-то вы отправляете обратно. Это не звучит , так что приятно, но на самом деле это может быть менее грязно. Тем более, что у вас, кажется, есть причина вообще не отказываться от постбэка (иначе вы могли бы просто использовать ссылку, верно?).