我正在使用c#与推特通信,我需要编写一个计划系统,以便在用户定义的日期发送推特消息。
要发送的消息存储在数据库中,其中包含发送日期和时间。
检查数据库中的预定消息并在时间到来时发送它的最佳方法是什么?
发布于 2009-06-14 16:19:41
实际上,解决方案在于使用windows服务,但它不能直接与ASP.NET MVC应用程序通信。我已经在Windows Service中添加了一个处理该任务的Web Service和一个System.Threading.Timer,以定期调用Web Service。
发布于 2009-06-11 07:54:50
你需要的时间有多准确?你能不能每隔5分钟轮询一次数据库,说“告诉我所有需要在当前时间+5分钟前发送的消息”,然后把它们都发送出去?(当然,还要在数据库中将它们标记为已发送。)他们是早到还是晚到有关系吗?
您可以在C#端进行调度以使其更准确,但除非您确实需要,否则我将坚持使用一个非常简单的解决方案。
(根据您的数据库,可能有一些聪明的方法来触发回调等……但是,我仍然坚持使用最简单的有效解决方案。)
发布于 2009-06-11 08:03:03
除了windows服务选项(或后台线程)之外,您还可以设置一个计划任务来运行一个应用程序,该应用程序会轮询数据库,并在每个定义的时间间隔内发送一次tweet。
如果需要,Windows计划can be setup using C#,并且非常容易手动设置。
https://stackoverflow.com/questions/979845
复制相似问题