Server.Transfer занимает больше времени, чем прямой вызов

У меня есть страница "screen_test.aspx". Когда я вызываю эту страницу напрямую, как «сервер/приложение/screen_test.aspx». Загрузка занимает 50 мс.

Теперь у меня есть промежуточная страница, которая проверяет безопасность "secure.aspx?name=screen_test" . Он проверяет безопасность и передает страницу в «screen_test.aspx». В этом процессе при вызове "secure.aspx?name=screen_test" требуется 300 мс.

В «secure.aspx» я пока не проверяю безопасность и просто делаю

string name = Request.QueryString["name"];
Server.Transfer(name , true);

Почему передача занимает так много времени (300 мс)?

Есть ли способ улучшить скорость загрузки страницы?


person Ranjan Kumar    schedule 09.06.2014    source источник
comment
Нужна помощь в срочном порядке. Мне нужно сделать вывод, следует ли мне использовать Server.Transfer или прямой вызов.   -  person Ranjan Kumar    schedule 09.06.2014


Ответы (1)


При использовании метода Transfer информация о состоянии для всех встроенных объектов включается в передачу. Это означает, что любые переменные или объекты, которым было присвоено значение в области сеанса или приложения, сохраняются. Кроме того, все текущее содержимое коллекций запросов доступно для ASP-файла, который получает передачу.

person Ricky    schedule 09.06.2014