Response.Redirect и HTML-контент - PullRequest
       16

Response.Redirect и HTML-контент

0 голосов
/ 15 ноября 2011

У меня есть веб-форма, единственной целью которой является перенаправление на другие страницы.Я создал ее как обычную страницу aspx, а затем удалил все в файле .aspx и сохранил только первую строку, показанную ниже - даже тег Doctype и HTML пропали:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Redirect.aspx.cs" Inherits="Web.Redirect" %>

Я также удалилфайл .designer.cs, так как в нем ничего нет.Это работает, но мне интересно, правильно ли то, что я сделал.В этом случае есть какие-либо опасения по поводу удаления всего содержимого HTML из веб-формы?

Ответы [ 2 ]

2 голосов
/ 15 ноября 2011

Ничего. То, что вы сделали, вполне приемлемо.

Однако, если единственной целью страниц является перенаправление, я бы использовал файл Handler / ASHX, так как он может использоваться точно таким же образом и не требует таких дополнительных затрат, как страница ASPX.

Вот описание и пример использования одного .

1 голос
/ 15 ноября 2011

Если вы делаете Response.Redirect(url), заголовок перенаправления добавляется, и запрос заканчивается. Это означает, что что-либо на вашей странице ASPX не выводится клиенту. Любой контент после Response.Redirect (url) не выводится на страницу. Вы можете также удалить его, как и вы.

Если вы сделаете Response.Redirect(url, false), ответ не закончится, и ваша страница будет передана клиенту. Однако клиент никогда не увидит его, потому что он перенаправлен.

...