using EnergiNet.Controllers;
using EnergiNet.Utility;
using Quartz;
using Quartz.Impl;
using Quartz.Impl.Triggers;
using System;
using System.Net;
using System.Threading.Tasks;
using System.Web.Configuration;

namespace Quartz.Utility
{
    public class Quertz : IJob
    {
        private static readonly log4net.ILog log = log4net.LogManager.GetLogger
       (System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
        public void Execute(IJobExecutionContext context)
        {
            if (context.JobDetail.Key.Name.Equals("Job1"))
            {

            }
            if (context.JobDetail.Key.Name.Equals("Job2"))
            {

            }

            if (context.JobDetail.Key.Name.Equals("Job4"))
            {
                InsertTimeseries();
            }
        }
        public void DeleteMeterpoint()
        {

        }
        public async Task InsertMeterpoint()
        {

        }

        public async Task InsertTimeseries()
        {

        }

        public void DoMoreWork()
        {

        }

    }
}
public class StartJob
{
    private static IScheduler _scheduler;

    static string DeleteMeterTime = WebConfigurationManager.AppSettings["DeleteMeter"];
    static string InsertMeterTime = WebConfigurationManager.AppSettings["InsertMeter"];
    static string InsertTimeseriesTime = WebConfigurationManager.AppSettings["InsertTimeseries"];
    public StartJob()
    {
        ISchedulerFactory schedulerFactory = new StdSchedulerFactory();
        _scheduler = schedulerFactory.GetScheduler();
        _scheduler.Start();
        Console.WriteLine("Starting Scheduler");
        AddJob();
    }
    public static void AddJob()
    {
        Quertz quertzJob = new Quertz(); //This Constructor needs to be parameterless
        JobDetailImpl jobDetail1 = new JobDetailImpl("Job1", "Group1", quertzJob.GetType());
        // "0 0/5 * * * ?"

        CronTriggerImpl trigger1 = new CronTriggerImpl("Trigger1", "Group1", DeleteMeterTime);
        _scheduler.ScheduleJob(jobDetail1, trigger1);


        JobDetailImpl jobDetail2 = new JobDetailImpl("Job2", "Group1", quertzJob.GetType());
        CronTriggerImpl trigger2 = new CronTriggerImpl("Trigger2", "Group1", InsertMeterTime); //0 0/2 * * * ?
        _scheduler.ScheduleJob(jobDetail2, trigger2);



        JobDetailImpl jobDetail4 = new JobDetailImpl("Job4", "Group1", quertzJob.GetType());
        CronTriggerImpl trigger4 = new CronTriggerImpl("Trigger4", "Group1", InsertTimeseriesTime);
        _scheduler.ScheduleJob(jobDetail4, trigger4);


        DateTimeOffset? nextFireTime = trigger1.GetNextFireTimeUtc();
        Console.WriteLine("Next Fire Time:" + nextFireTime.Value);
    }
}

Web config setting for cron expression quartz library.

    <add key="DeleteMeter" value="0 1 2,14 * * ?" />
    <add key="InsertMeter" value="0 3 2,14 * * ?" />
    <add key="InsertTimeseries" value="0 5 2,14 * * ?" />