如何修复C#中的这个Timer tick错误?

Ima*_*azi 1 .net c# timer

我正在使用此代码从Internet地址接收数据.但是,当计时器第一次打勾时连接正常并且程序正常工作.但在第二次,从这一行提出错误:

HttpWebResponse response = (HttpWebResponse)request.GetResponse();
Run Code Online (Sandbox Code Playgroud)

我想知道如何解决这个问题.

定时器间隔为30秒.

码:

private void timer1_Tick(object sender, EventArgs e)
{
    WebRequest request = WebRequest.Create("http://localhost  
    /go/online.asp?prog=y&rln=" + Properties.Settings.Default.cos);

    request.Credentials = CredentialCache.DefaultCredentials;

    HttpWebResponse response = (HttpWebResponse)request.GetResponse();
    Stream dataStream = response.GetResponseStream();
    StreamReader reader = new StreamReader(dataStream);

    string responseFromServer = reader.ReadToEnd();

    reader.Close();
    dataStream.Close();
    response.Close();
}
Run Code Online (Sandbox Code Playgroud)

错误:WebException未处理.远程服务器返回错误:(500)内部服务器错误.

Ale*_*dez 5

通常当我使用计时器时,我会在开始处理之前停止计时器,然后在完成处理后重新启动计时器.试试看,看看它是否有效.