C# 需要在asp.net中计划方法执行

C# 需要在asp.net中计划方法执行,c#,C#,我正在创建一个web应用程序,其中需要允许用户计划任务的执行。 我已经通过了各种线程来安排任务,但它们都在使用我不知道的windows服务。此外,由于预算限制,我无法在服务器系统中安装visual studio。 是否有一种方法可以创建一个在asp.net应用程序的后台线程中运行调度程序的方法。任何代码示例都会有很大帮助。这不是方法。如果需要计划任务,应创建控制台应用程序并使用Windows任务计划程序运行它 您可以创建一个应用程序,向用户发送一封电子邮件,其中包含一个指向任务应该完成的页面的链

我正在创建一个web应用程序,其中需要允许用户计划任务的执行。 我已经通过了各种线程来安排任务,但它们都在使用我不知道的windows服务。此外,由于预算限制,我无法在服务器系统中安装visual studio。
是否有一种方法可以创建一个在asp.net应用程序的后台线程中运行调度程序的方法。任何代码示例都会有很大帮助。

这不是方法。如果需要计划任务,应创建控制台应用程序并使用Windows任务计划程序运行它


您可以创建一个应用程序,向用户发送一封电子邮件,其中包含一个指向任务应该完成的页面的链接。

需要了解的一点是,ASP.NET旨在为来自网络的请求提供服务。 里面的一切都是为了这个。因此,是的,您可以运行后台任务,但是有许多警告和问题

例如,如果ASP.NET应用程序在一段时间内没有收到任何请求,IIS将关闭该应用程序。此外,如果检测到文件系统发生更改,应用程序可能会在没有警告的情况下重新启动。因此,运行的代码将被中止

这并不是说你不能解决这些问题,但它确实不是计划任务执行的最佳选择

最好的办法是将任务的详细信息存储在数据库中,然后使用一个始终运行的Windows服务(其实并不难,有很多示例),或者手动计划定期运行的控制台应用程序(如建议的)来执行这些任务


您可能会发现Quartz.NET之类的库可能有助于安排/运行这些任务

除了使用内置的Windows任务调度程序来启动IE之外?您可以使用它来计划页面的执行。Ex.\iexplore.exe%1感谢您的回复,但我所做的实际上是对当前项目的增强。因此,我当前的应用程序是一个web应用程序,我需要从中计划一个任务。我刚刚在回答中添加了几行,不幸的是,在web应用程序上创建一个计划任务没有多大意义。