我想创建一个ASP.MVC应用程序,我希望在某个时间通过Telegram Bot Api
自动向我的电报频道发送一些消息,即使我不在我的网络应用程序中。
例如,我想在这些日期发送我的一条消息:2018/03 / 23,2018 / 03 / 28,2018 / 04/05。
我想在没有任何人工帮助的情况下自动发送这些消息 但我不知道怎么做。现在我可以在此时发送消息,而不是在以后自动发送消息。
答案 0 :(得分:2)
您应该查看HangFire作为nuget包提供的内容,并且可以完美地满足您的需求。
在.NET和.NET Core应用程序中执行后台处理的简便方法。无需Windows服务或单独的过程。 以持久存储为后盾。开放和免费用于商业用途。
允许创建:
延迟作业也只执行一次,但在一定时间间隔后不会立即执行。
var jobId = BackgroundJob.Schedule(
() => Console.WriteLine("Delayed!"),
TimeSpan.FromDays(7));
答案 1 :(得分:0)
使用.Net native没有这样的选项(至少我不知道)。
创建一个监视数据库并执行操作的Windows服务。
或者,更简单一点,创建一个每5分钟运行一次的计划任务,例如。并执行控制台应用程序。
答案 2 :(得分:0)
为什么要在Asp.Net MVC中实现相同的功能..?在MVC中,如果可以的话,你仍然无法完成任务,但它不是正确的实现方式。
根据您的要求,您必须使用Windows服务,这将是您的需求实施的完美方法。