2016-04-30 3 views
0

Я только что обнаружил пожар. Я успешно установил версию хранилища mysql. Я хочу использовать это в следующем сценарии: Каждый день в 12:01 он должен запускать ASP.NET MVC5 с действием контроллера OWIN и EF, который проверяет базу данных и выбирает ссылки на оплату, которые должны быть обработаны в соответствующую дату. Это действие заканчивается представлением адреса поставщику обработки платежей. Мой вопрос заключается в том, что мое действие называется «ProcessPayments». Как настроить hangfire для повторения этого процесса каждый день. Спасибо за любую помощь.Использование Hangfire для автоматической обработки платежей

+1

ли вы пытаетесь читать документы? http://docs.hangfire.io/en/latest/background-methods/performing-recurrent-tasks.html – DavidG

ответ

0

На всякий случай кому-то нужен пуск, как я, когда я задал этот вопрос. Используя Hangfire Mysql Storage, Identity 2, ASP.NET, MVC5, EF, C#, вы можете создать действие в своем контроллере, как показано ниже, для добавления повторяющегося задания для процесса.

public ActionResult PDPayment(int id) 
{      
string cronExp = "1 12 * * *"; 
using (ApplicationDbContext db = new ApplicationDbContext()) 
{ 
var a = db.DDs.SingleOrDefault(a => a.DDId==id); 
RecurringJob.AddOrUpdate(a.id+"-"+a.DDId+"_job",() => ProcessPayments(id), cronExp); 
return new EmptyResult(); 
}  
} 

Затем вы создаете свой метод или логику для оплаты.

public static void ProcessPayments(int id) 
     { 
    eg fetch records with id 
    create invoice 
    process invoice- payment 
    update records of payment 
    send email 
    redirect to success or failed page  
     } 

Надеется, что это помогает

Смежные вопросы