Картинка блога

Перезагрузка страницы из кода часто оказывается самым быстрым и безобидным, с точки зрения целостности и актуальности данных. Этот прием часто использует больше ресурсов чем обычный, повторный вызов DataBind или обновление параметров в ручную. Но если учесть то, что над страницей работает сразу несколько разработчиков, учесть все нюансы бывает довольно сложно. Ситуаций можно придумать массу, популярные из них:

  • Обновление данных после добавления новой или обновления старой переменной в сессии.
  • Обновление списка элементов после его добавления в событии.

Если программист ленивый или не уверен что сможет обновить все поля после добавления в ручную и не оставить ошибок, пере направление на текущую страницу может спасти массу времени. Вот код перезагрузки текущей страницы

HttpContext.Current.Response.Redirect(HttpContext.Current.Request.Url.ToString());

Эта строка создает заголовок, заставляющий браузер загрузить текущую страницу заново. Отличительной чертой такого подхода есть то, что браузер «забывает» о форме, которую он посылал до этого, что предотвращает посылку тех же данных при попытке перезагрузки станицы пользователем.

Метки:,