Timerの動作について

解決


0で除算しました  2006-01-31 01:10:27  No: 129951

タイマーに関するコードを以下のように書いてみました

10秒ごとにRedispは発生するけどLabel2.textは更新されません

Server.Transfer("URL")を入れてもページが切り替わることは
ありませんでした

StopをRedispに入れたところ
ちゃんとRedispは10秒おきに実行されているのですが・・・

なぜコードの内容が実行されないのか教えてくださいm(_ _)m

よろしくお願いします

    Dim MyTimer As System.Timers.Timer

    Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        ' ページを初期化するユーザー コードをここに挿入します。  
        MyTimer = New System.Timers.Timer
        MyTimer.Interval = 10000
        MyTimer.Enabled = True
        AddHandler MyTimer.Elapsed, AddressOf Redisp

        If Not Page.IsPostBack Then
        End If
    End Sub

    Private Sub Redisp(ByVal source As Object, ByVal e As Timers.ElapsedEventArgs)
        Label2.Text = Format(Now) + "時点での情報"
    End Sub


0で除算しました  2006-01-31 01:30:30  No: 129952

いろいろ調べているとサーバ側だけでイベントが完結していることが
わかりました。
postbackさせるにはクライアント側でタイマーを動作させないと
だめ??というところまではわかりました

後環境書いてなかったので
ASP.net(VB 2003)でWinXPです

以上よろしくお願いします


DivideByZeroExceptio  2006-01-31 07:41:25  No: 129953

今回のように、10秒おきにサーバ側と通信させるような場合には、
サーバ側の VB.NETではなく、クライアント側のJavaScript(JScript)で 
setTimeout メソッドや setInterval メソッドを呼び出す事で対応できます。
http://www.codeproject.com/aspnet/tcdoom_webtimer.asp

さもなくば、HTML側の METAタグに、
  <meta http-equiv="refresh" CONTENT="10">
とか
  <meta http-equiv="refresh" CONTENT="10;URL=foo.aspx?……">
などと書いて、10秒後に遷移させるという手もあるらしいです。
(GDNJの掲示板には、このmetaタグが埋め込まれているっぽい)


0で除算しました  2006-02-01 18:12:17  No: 129954

解答ありがとうございます

解決しました


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加