Поведение ASP.NET по умолчанию состоит в том, что все содержимое элемента формы отправляется обратно в класс страницы, который изначально создал HTML и был передан клиенту. Это необходимое условие для запуска обработчика событий при нажатии кнопки.
Но если вы установите значение атрибута action в элементе формы на имя другого файла, это переопределит поведение по умолчанию, и весь контент будет опубликован в этом новом месте.
Это утверждение верно для IIS7.5, но в случае IIS6.0 оно переопределяет поведение по умолчанию и перенаправляет на страницу, которая первоначально создала html, вместо страницы метода действия формы.
Пример кода (page.aspx)
Пустая страница default.aspx
action = "Default.aspx" runat = "server" method = "post">
...
код страницы aspx:
protected void Button1_Click (отправитель объекта, EventArgs e) {
Label1.Text = "Событие нажатия кнопки Page.aspx";
}
Событие нажатия кнопки для page.aspx запускается вместо перенаправления на default.aspx в IIS6.0, но в IIS 7.5 не происходит то же самое.