我已经编写了一份我希望在c#mvc应用程序中每5分钟执行一次的预定作业。我真的不确定如何启动此方法。我已经尝试将该方法添加到我的global.asax中的application_start中,但我看不到" TimedJobRan"在输出窗口中。
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Threading.Tasks;
using System.Timers;
using System.Web;
namespace Test.Jobs.Invoices
{
public class SendInvoiceEmail
{
public static void Main()
{
var startTimeSpan = TimeSpan.Zero;
var periodTimeSpan = TimeSpan.FromMinutes(5);
var timer = new System.Threading.Timer((e) =>
{
Run();
}, null, startTimeSpan, periodTimeSpan);
}
public static void Run()
{
Debug.WriteLine("TimedJobRan");
}
}
}
的Application_Start
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
RouteConfig.RegisterRoutes(RouteTable.Routes);
BundleConfig.RegisterBundles(BundleTable.Bundles);
BundleTable.EnableOptimizations = true;
ViewEngines.Engines.Insert(0, new DbDrivenViewEngine());
Jobs.Invoices.SendInvoiceEmail.Main();
}