“mysql”没有重载匹配委托“ElapsedEventHandler”。Windows 服务 C#

我开发了一个 Windows 服务,用于将文件从一个位置复制到另一个位置。


由于我需要在后台运行服务,因此有必要实现计时器功能。


服务.cs


  protected override void OnStart(string[] args)

        {

            //OnStart(new string[0]);



        }



        public void Start()

        {


            timer1 = new Timer();

            this.timer1.Interval = 30000; //every 30 seconds

           41 ***this.timer1.Elapsed += new System.Timers.ElapsedEventHandler(this.mysql);***

            timer1.Enabled = true;

           43 mysql();

        }


        static void mysql()

        {

             **File copy code included in this function.

         }

上面提到的第 41 行中的错误触发是,


“mysql”没有重载匹配委托“ElapsedEventHandler”。


慕桂英546537
浏览 328回答 1
1回答

慕容森

像这样在 mysql() 上设置参数static void mysql(object sender, ElapsedEventArgs e)我希望这个对你有用 :)++ 通过评论添加此代码将允许计时器以间隔工作在 Start() 中添加此代码        this.timer1.Interval = 1000;                 this.timer1.Tick += new System.EventHandler(this.mysql_tick);并从 Start() 中添加此代码private void mysql_tick( object sender, EventArgs e ){blah blah... }++ 之后你需要使用 timer1.Start(); 使用 mysql_tick++ timer1.Stop(); 将停止工作。
打开App,查看更多内容
随时随地看视频慕课网APP