(Som vanligt slog timeout till igen, så jag får väl posta igen)
När jag kör ASP.NET (C#) så använder jag UpdatePanel och det ser ut så här i kod:
Koden ska vara placerad i en form...
Kod:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="SeqNo.aspx.cs" Inherits="IISClient._SeqNo" %>
<%@ Register assembly="AjaxControlToolkit" namespace="AjaxControlToolkit" tagprefix="asp" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<head></head>
<body>
<form id="form1" runat="server">
<asp:ToolkitScriptManager ID="ScriptManager1" runat="server">
</asp:ToolkitScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:ObjectDataSource ID="odsSeqNo" runat="server" SelectMethod="GetSeqNo"
TypeName="IISClient.odsSeqNoList"></asp:ObjectDataSource>
<asp:GridView ID="GridView1" runat="server" AllowSorting="True"
AutoGenerateColumns="False" CellPadding="4" DataSourceID="odsSeqNo"
EmptyDataText="No Data detected!" ForeColor="#333333" GridLines="None">
<Columns>
<asp:BoundField DataField="SeqNo" HeaderText="SeqNo" >
<HeaderStyle HorizontalAlign="Left" />
</asp:BoundField>
</Columns>
</asp:GridView>
<asp:Timer ID="Timer1" runat="server" Interval="5000" ontick="Timer1_Tick">
</asp:Timer>
</ContentTemplate>
</asp:UpdatePanel>
</form>
</body>
</html>
Det är smart att koppla "BoundField" till en ObjectDataSource så kan man skapa ett objekt som matar konstruktionen med data hur man vill. Funkar klockrent att bygag en preliminär testklass "TestData" som man senare kan koppla in med livedata mot en databas, webservice gör JSON- eller REST-protokollen (eller SOAP om man föredrar det).
Jag körde uppdatering över ett lokalt WIFI-nät mot webbläsaren i iPhone respektive en Android (Sony Ericsson Xperia MiniPro) md 1500 rader i gridden och uppdatering varje 0,1 sekund och det funkade superfint i flera timmar som jag testade.