【问题标题】:ASP.NET script "scheduling" questionASP.NET 脚本“调度”问题
【发布时间】:2009-03-30 17:55:17
【问题描述】:

我正在寻找一种方法,让脚本每天早上 5 点运行以删除 Temp 文件夹的内容。以下是我正在考虑的方法。我将不胜感激对此的任何想法或对其他方法的建议。我想将所有内容都保留在本地,这样我的帐户之外的折扣 ASP 托管服务就不会受到外部依赖。

  • 有一个文本文件,其中包含下一次所需运行的日期时间(明天上午 5:00)。
  • 有一个 Datetime 缓存值在(一小时?)之后过期
  • 当有人访问网站并且缓存过期时,将日期时间重新加载到缓存中
  • 如果 Datetime 已过,则运行要“计划”的脚本并在文件中的 DateTime 中添加 24 小时

感谢您的 cmets。

【问题讨论】:

  • 您能否提供有关临时文件夹内容的更多详细信息以及为什么需要清除它?我认为可能有一个更好的答案,即不依赖尾随进程来清理目录。
  • 临时文件夹包含来自 mvc 表单的上传图像。成功完成表单后,相关文件将从临时文件夹中清除,但如果用户没有进入表单结束,则该文件将保留在临时目录中

标签: c# asp.net asp.net-mvc


【解决方案1】:

你是在正确的方式。 Here 是一篇很好的文章,如何实现这一点。

另外,根据您的评论,为什么不使用会话结束事件来清除?此外,您也可以挂接到应用程序端,以防万一。

【讨论】:

    【解决方案2】:

    您还可以创建一个 Web 服务来执行该任务,然后让一个计划任务定期调用该 Web 服务。

    【讨论】:

      【解决方案3】:

      这不是一个好主意,因为您依赖的输入可能永远不会执行需要定期执行的操作。

      因此,您需要来自站点外部的输入(因为该站点是由请求触发的)来触发您的事件,也就是调度程序。

      应该为此使用计划任务。如果你不是,那么你应该有一些其他的过程,将事件发送到你想要的时间表的网站(也许公开一个网络方法)。

      【讨论】:

        猜你喜欢
        • 2021-09-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-05-06
        • 1970-01-01
        • 2013-02-18
        相关资源
        最近更新 更多