Атрибут Hangfire DisableConcurrentExecution никогда не вызывался
Согласно документации, у меня есть метод, который можно вызывать с другим идентификатором и запускать одновременно. Однако я хочу остановить одновременный запуск метода, если передается тот же идентификатор. Я пробовал несколько вещей, но атрибут disableconcurrentexecution просто никогда не вызывался. Я предполагаю, что это сработает, но по некоторым причинам атрибут просто не вызывается.
public void ScheduleUpsertMethod(int Id)
{
var result = _scheduler.Schedule<Account>(service =>
service.doSomething(Id));
}
[AutomaticRetry(OnAttemptsExceeded = AttemptsExceededAction.Fail, Attempts = 3, LogEvents = true)]
[DisableConcurrentExecution 5*60]
public async Task doSomething(int Id)
{
}





Я отвечаю на свой вопрос здесь, так как никто не ответил. Я сделал ошибку, поместив DisableConcurrentExecution с методом. Учетная запись на самом деле является интерфейсом, и мне пришлось поместить DisableConurrentExecution в интерфейс учетной записи, чтобы активировать атрибут.
@Thoms Ng - у меня такая же проблема. Мой метод интерфейса с параметром «Id». И я хочу остановить одновременное выполнение метода с тем же идентификатором. У меня вообще не работает с тем же идентификатором. Не могли бы вы поделиться своим интерфейсом, если это возможно.