ページをリロードせずにページのラベルを更新したい。
このページは、SMS の送信に使用されます。COM ポートに接続された GSM モデムを使用しているため、テキストごとに約 3 秒かかる非常に遅いプロセスです。(オンライン サービスや USB 接続ではなく、シリアル GSM モデムを使用しているのには長い理由があります。)
で区切って複数指定できます";"
。各テキストが送信されるとすぐにページを更新したい。しかし、現時点では、最後に一度にラベルを更新するだけです。これを達成する最も簡単な方法は何ですか? おそらく、AJAX、JavaScript、または Threading が考えられました。(おっしゃる通り、シンプルイズグッド!)
現在のコード:
SerialPort sp = new SerialPort("COM1", 115200, Parity.None, 8, StopBits.One);
try
{
String[] numbers = tbNo.Text.Split(';');
foreach (string n in numbers)
{
sp.Open();
sp.Write("AT+CMGF=1" + (char)(13));
Thread.Sleep(200);
sp.Write("AT+CMGS=" + n.Replace(" ", string.Empty) + (char)(13));
Thread.Sleep(200);
sp.Write(tbMsg.Text + (char)(13) + (char)(26));
Thread.Sleep(3000);
sp.Close();
Label1.Text = Label1.Text + "Message sent to " + n + "<br />";
}
} catch (Exception error) {
Label1.Text = error.Message;
};