Когда я буду использовать Server.Transfer через PostBackURL? - PullRequest
3 голосов
/ 15 сентября 2008

или наоборот.

Обновление:
Хм, давайте предположим, что у меня есть приложение для корзины покупок, пользователь нажимает кнопку «Оформить заказ». Следующее, что я хочу сделать, это отправить пользователя на страницу Invoice.aspx (или аналогичную). Когда пользователь нажимает кнопку «Оформить заказ», я могу Button.PostBackURL = "Invoice.aspx"

или я мог бы сделать

Server.Transfer("Invoice.aspx")

(я также изменил название, так как метод называется Transfer, а не TransferURL)

Ответы [ 3 ]

6 голосов
/ 15 сентября 2008
  • Server.TransferURL не приведет в обход HTTP ответ на запрос. Адресная строка не будет обновлять, насколько браузер знает, что получил только один документ Server.Transfer также сохраняет контекст выполнения, поэтому скрипт «продолжает работать», а не «запускается заново».
  • PostbackURL обеспечивает HTTP-запрос, в результате чего возможно другой URL и конечно расходы на задержку в сети.

Обычно, когда вы пытаетесь «выбрать между двумя», это означает, что вам лучше использовать PostbackURL.

Не стесняйтесь расширять свой вопрос со спецификой, и мы можем рассмотреть ваши точные потребности.

3 голосов
/ 15 сентября 2008

Вот хорошая разбивка между ними:

Server.Transfer vs Response.Redirect

1 голос
/ 15 сентября 2008

Server.Transfer делается полностью с сервера. Обратная публикация инициируется клиентом для публикации содержимого формы, а URL обратной ссылки идентифицирует страницу для публикации.

Возможно, вы хотели сравнить с Response.Redirect, который заставляет клиента отправлять новый запрос на новый URL.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...