2011-03-07 73 views
3

一些安排,我需要每周一,周日例如做一些工作在7点钟做一些事情。我编写了Web服务,可以完成这项工作,但我不知道如何在需要的时间执行此Web服务。有人能帮助我吗?根据ASP .NET

P.S.我使用单声道和是mod_mono在Mac OS X

回答

3

在Windows中,你通常会创建一个基于控制台应用程序来调用Web服务,它会被添加到任务计划程序。

对于Mac OS X,你可以尝试做类似的东西,并使用cron的。检查出this post

+0

好的,thx。但是,如何在Mac OS X上调用Web服务? – 2011-03-07 23:09:12

+0

与在Windows中调用Web服务的方式相同。使用它并调用Web方法。向控制台应用添加Web引用,指定该服务的Url。代理包装将被创建。 (假设您使用的不是WCF的Web服务)。 – 2011-03-07 23:10:34

+0

@创建一个c#应用程序并将服务引用添加到您的Web服务并进行调用。这是[一篇文章](http://www.eggheadcafe.com/tutorials/aspnet/a1647f10-9aa4-4b0c-bbd9-dfa51a9fab8e/adding-wcf-service-refere.aspx),它解释了从Visual中添加对WCF服务的引用工作室。 – 2011-03-07 23:12:40

2

有解决这几个方面,但无论方法,你把它可能是最好运行Web程序之外的计划任务。

你可以创建一个简单的控制台应用程序,做必要的工作,并设置一个cron作业在Mac OS X上运行它(类似于计划任务在Windows)。或者,您可以使用类似Quartz.Net的方法来创建具有计划的作业,然后在Mac OS上将该进程作为守护进程运行。

这两者之间的区别在于,守护进程一直运行并执行工作根据由程序所定义的时间表,控制台应用程序根据需要只运行,并通过系统级处理例如cron触发。

+0

但是我必须写出正确的web服务:( – 2011-03-07 23:12:00

+0

webservice本身无法做任何事情而不被调用,你需要调度调用它的东西,而不是web服务本身。 – 2011-03-07 23:14:11