Планираната задача на конзолното приложение се изпълнява по два различни начина

Имам програма за клиент, който трябва да изпълнява един набор от код на всеки 30 минути чрез планирана задача.

в 1:30 сутринта трябва да изпълни отделен набор от кодове.

И двата набора код ще генерират файл и ще го поставят в директория.

Как да го настроя да може да изпълнява два комплекта SQL код?

Бих могъл да го направя, като получа текущата дата и час и го сравнявам, но това ми се струва обемисто.

Има ли начин задача по график да изпълни програма, която да предаде нещо на моите Main(string[] args)?

Има ли правилен начин да го направите, без да създавате две отделни приложения?


person James Wilson    schedule 15.11.2013    source източник


Отговори (2)


Накарайте вашата програма да приеме параметри, след това планирайте вашето конзолно приложение (с помощта на Windows Scheduler) с различните параметри... нещо като:

void Main(string[] args)
{
    var firstArg = args.FirstOrDefault();
    if (firstArg == "option1")
    {
        // do stuff
    }
    else if (firstArg == "option2")
    {
        // do other stuff
    }
}

В Scheduler направете нещо като:

въведете описание на изображението тук

person dav_i    schedule 15.11.2013
comment
Лесно ли е да предам аргумент от Scheduler към моята програма? Никога не съм правил това преди. - person James Wilson; 15.11.2013

Запишете в плосък файл вашия параметър резултат от първия процес или база данни и го вземете от там с втория процес.. Или просто нека вашият процес винаги работи и използвайте хронометър за извършване на събития на всеки 30 минути, вместо да използвате програмата за планиране на задачи, тогава вие може да го запази в паметта. Имате много възможности.

person Chris    schedule 15.11.2013