asp.net – 有没有办法每天在.Net Web应用程序中运行一个进程,而无需编写Windows服务或SQL服务器作业

我们要求在ASP.Net应用程序中,应该每天在指定的时间自动调用.Net进程.此过程需要与数据库(SQL Server 2005)进行交互,并每天生成计费.我们正在使用共享托管,因此我们无法创建 Windows服务或创建SQL Server作业.如果没有用户干预,怎么办?

解决方法

您可以尝试使用 the technique described here,在StackOverflow本身使用(或者至少在某处使用它).简而言之:
  1. At startup,add an item to the HttpRuntime.Cache with a fixed
    expiration.
  2. When cache item expires,do your work,such as WebRequest or what have
    you.
  3. Re-add the item to the cache with a fixed expiration.

要使其在特定时间而不是间隔时间运行,您可以降低间隔时间,并简单地修改工作方法来检查时间本身.

正如上面注释的原文中的注释,这不是一个完美的解决方案,没有人会喜欢它适合调度技术(如果有的话).有关其他资格,请参阅When Does Asp.Net Remove Expired Cache Items?.

相关文章

### 创建一个gRPC服务项目(grpc服务端)和一个 webapi项目(...
一、SiganlR 使用的协议类型 1.websocket即时通讯协议 2.Ser...
.Net 6 WebApi 项目 在Linux系统上 打包成Docker镜像,发布为...
一、 PD简介PowerDesigner 是一个集所有现代建模技术于一身的...
一、存储过程 存储过程就像数据库中运行的方法(函数) 优点:...
一、Ueditor的下载 1、百度编辑器下载地址:http://ueditor....