在c#mvc应用程序

时间:2018-05-18 12:50:11

标签: c# asp.net-mvc

我已经编写了一份我希望在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();
    }

0 个答案:

没有答案