ASP.net поможет с автоматическим обновлением веб-страницы - PullRequest
1 голос
/ 21 июня 2011

Я работаю над веб-проектом, в котором мне необходимо отображать данные из базы данных interbase в виде сетки. однако эти данные постоянно меняются, и мне удалось запросить базу данных и отобразить данные в виде таблицы. Теперь я застрял в том, как я могу автоматически обновить страницу через 5 минут, чтобы новые данные запрашивались и отображались.

Подскажите, пожалуйста, как я могу достичь вышеупомянутого.

Ответы [ 7 ]

3 голосов
/ 21 июня 2011

Если вы не используете AJAX, вы можете установить тег META refresh для повторной загрузки страницы каждые 5 минут.

Если вы используете AJAX, вы можете установить setTimeout для повторного получения данных.

2 голосов
/ 21 июня 2011

Поместите GridView в UpdatePanel и используйте Timer.

Вот несколько ссылок.

http://ajax.net -tutorials.com / controls / timer-контроль / http://mattberseth.com/blog/2007/08/using_the_ajax_timer_control_a.html
http://msdn.microsoft.com/en-us/library/cc295400.aspx

0 голосов
/ 06 апреля 2014

На странице default.aspx

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
    <!-- For auto refresh cause use this section-->
    <meta http-equiv="refresh" content="30">
<meta http-equiv="refresh" content="30;url=../account/default.aspx">
<title></title>
</head>

В коде позади default.aspx.cs

protected void Page_Load(object sender, EventArgs e)
{
   Response.AppendHeader("Refresh", 30 + "; URL=../account/default.aspx");
} 

Эта веб-страница будет автоматически обновляться каждые 30 с.

Спасибо

0 голосов
/ 04 января 2013

Используйте управление таймером на панели обновления, установите интервал, вызовите событие на стороне сервера для события timer_Tick, страница будет обновляться с регулярным интервалом.Интервал в миллисекундах.

<asp:ScriptManager ID="ScriptManager1" runat="server">
    </asp:ScriptManager>

 <asp:UpdatePanel runat="server" id="TimedPanel" updatemode="Conditional">
    <Triggers>
        <asp:AsyncPostBackTrigger controlid="UpdateTimer" eventname="Tick" />
        <asp:PostBackTrigger ControlID="btnSubmit" />
    </Triggers>
    <ContentTemplate>
     <asp:Timer runat="server" id="UpdateTimer" interval="2000"  OnTick="Timer1_Tick"  /> 
0 голосов
/ 21 июня 2011

Вы можете установить обновление META на странице, которая выводится из главной страницы, вам просто нужно добавить ее в код в PreRender

HtmlGenericControl ctrl = new HtmlGenericControl("meta");
ctrl.Attributes["http-equiv"] = "refresh";
ctrl.Attributes["content"] = "300";
this.Page.Header.Controls.Add(ctrl);
0 голосов
/ 21 июня 2011

Создайте страницу со следующим тегом META в разделе HEAD

<META http-equiv = "refresh" URL = "default.html" />
0 голосов
/ 21 июня 2011

Вы можете написать таймер JavaScript, а затем обновить страницу. Не могу вспомнить синтаксис, но это должно быть что-то вроде window.location.reload или window.form.reload. Вы добавляете функцию таймера JavaScript в конце функции Page_Load.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...