私はASP.NetとAJAXも初めてです。
フォーラムをプログラミングしています。マイshowcomment.aspx
ページでは、Repeater を使って SQL Database からコメントを取得し、トピックごとに表示しています。
UpdatePanel を使用して、データベースに挿入された新しいコメントを自動更新します。
<div onclick="__doPostBack('UpdatePanel1', '');">
<asp:UpdatePanel ID="UpdatePanel1" runat="server" OnLoad="UpdatePanel1_Load">
<ContentTemplate>
<asp:Repeater ID="RepeaterComment" runat="server">
....
</asp: Repeater...>
</ContentTemplate>
</asp: UpdatePanel>
関数UpdatePanel1_Load():
public void UpdatePanel1_Load(Object sender, EventArgs e)
{
BindRepeaterComment();
}
データベースに新しい行がいつ挿入されたかを認識するために、 PageMethod
orfunction
または(ただし、以前に jquery を作成したことはありません) が必要なようです。jquery
データベースの変更を確認してから UpdatePanel に適用するにはどうすればよいですか?
アップデート:
以下の BindRepeaterCommment 関数を見てください。
private void BindRepeaterComment(int idtopic)
{
string sql = "select * from COMMENT where idTOPIC="+idtopic;
DataTable comment = l.EXECUTEQUERYSQL(sql);
RepeaterComment.DataSource = comment;
RepeaterComment.DataBind();
}
Timer コントロールを使用して 5 秒ごとに UpdatePanel を再読み込みすることもお勧めしますが、データベースが変更された (新しい行が挿入された) ときに自動更新したいだけです。