Я думал, что вы не можете изменить QueryString на сервере без перенаправления.
Но этот код работает * для меня:
Request.QueryString edit
Я так поражен.
Итак, вот мои вопросы относительно этого:
- Почему Request.QueryString только для чтения?
- Почему этот код / хак работает *?
- Насколько это безопасно, если вы перейдете на чтение только после того, как закончите редактирование, как в отношении ошибок или неожиданного поведения, так и в отношении поддержки и понимания кода?
- Где в цикле событий было бы наиболее целесообразно выполнить это сумасшедшее редактирование, если вы используете только PageLoad и OnPageRender?
* Подробнее:
У меня есть страница с элементами, которые сгруппированы по вкладкам. Каждая вкладка является asp: LinkButton
Я хочу иметь возможность напрямую ссылаться на определенную вкладку. Я делаю это с параметром QueryString 'tab = tabName'. Оно работает. Но когда я затем щелкаю новую вкладку, строка запроса все еще находится в URL-адресе, и, таким образом, активируется вкладка, указанная в строке запроса, а не та, на которую я нажал.
При использовании Request.QueryString edit этого не происходит. Тогда мое решение «работает».
Заранее спасибо.