Мне лично нужно убедиться, что страница сохраняет состояние, чтобы все текстовые поля и другие поля ввода сохраняли свои значения. выполняя метаобновление, это похоже на новый пост, IsPostBack всегда ложен, поэтому все ваши элементы управления снова находятся в инициализированном состоянии. Чтобы сохранить состояние, поместите это в конец вашего Page_Load (). создайте скрытую кнопку на странице с подключенным событием, что-то вроде butRefresh с событием butRefresh_Click (...). Этот код устанавливает таймер на странице для запуска обратной передачи так же, как пользователь сам нажимает кнопку обновления. все состояние и сеанс сохраняются. Наслаждайтесь! (PS вам может понадобиться поместить директиву в заголовок @Page EnableEventValidation = "false", если вы получаете сообщение об ошибке при обратной передаче.
//tell the browser to post back again in 5 seconds while keeping state of all controls
ClientScript.RegisterClientScriptBlock(this.GetType(), "refresh", "<script>setTimeout(function(){ " + ClientScript.GetPostBackClientHyperlink(butRefresh, "refresh") + " },5000);</script>");