c# - 如何在完成异步任务之前等待 24 小时?

标签 c# asp.net-mvc delay

我正在使用 .NET Framework 制作一个 MVC 应用程序,在我的一个 Controller 中我调用了一个异步任务,该任务向登录用户发送一封电子邮件。

当用户单击特定的复选框并且电子邮件旨在作为一种提醒时调用此任务。

整个任务按预期工作(选中复选框时用户会收到一封电子邮件),但我需要等待 24 小时才能真正发送电子邮件,因为它是一个提醒。

目前电子邮件是立即发送的,如何在代码继续的同时延迟完成我的“电子邮件任务”?

最佳答案

使用类似 Hangfire 的库这让您可以安排后台作业并使用持久存储来支持它们。

然后您可以轻松地安排工作,例如:

BackgroundJob.Schedule(
    () => SendEmail("user@domain"),
    TimeSpan.FromDays(1));

关于c# - 如何在完成异步任务之前等待 24 小时?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55829393/

相关文章:

c# - 没有组元素的列表的 CollectionDataContractAttribute

javascript - Jquery 数据表服务器端分页与外部搜索字段

javascript - 来自 Controller 的警报消息 : Add alert behavior in partial view?

javascript - 在同一功能的操作之间添加时间延迟?

c++ - 如何在 Arduino 延迟期间在 void loop() 中使用 serial.available()?

c# - Dictionary<TKey, TValue> 的枚举器是否按添加顺序返回键值对?

c# - 使用不同的浏览器检测服务器是否仍然有ajax请求C#jquery

c# - 从 .Net 应用程序(控制台)访问受 kerberos 保护的 webhdfs

javascript - 使用 Ajax 动态添加局部 View

c - C中的管道/FIFO清除