定时任务修改
parent
cf59838779
commit
f8f66b1110
|
@ -41,6 +41,21 @@ public class HangfireHostService(IRecurringMessageScheduler _recurringMessageSch
|
||||||
HangfireJobHelper.RemoveCronJob(jobId);
|
HangfireJobHelper.RemoveCronJob(jobId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 清除所有可能存在的定时任务,防止类型加载错误
|
||||||
|
var allJobIdList = JobStorage.Current.GetConnection().GetRecurringJobs().Select(t => t.Id).ToList();
|
||||||
|
foreach (var jobId in allJobIdList)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
HangfireJobHelper.RemoveCronJob(jobId);
|
||||||
|
_logger.LogInformation($"已清除定时任务: {jobId}");
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
_logger.LogWarning($"清除定时任务 {jobId} 时出错: {ex.Message}");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
var taskInfoList = await _trialEmailNoticeConfigRepository.Where(t => t.Trial.TrialStatusStr == StaticData.TrialState.TrialOngoing && t.EmailCron != string.Empty && t.IsAutoSend)
|
var taskInfoList = await _trialEmailNoticeConfigRepository.Where(t => t.Trial.TrialStatusStr == StaticData.TrialState.TrialOngoing && t.EmailCron != string.Empty && t.IsAutoSend)
|
||||||
.Select(t => new { t.Id, t.Code, TrialCode = t.Trial.TrialCode, t.EmailCron, t.BusinessScenarioEnum, t.TrialId })
|
.Select(t => new { t.Id, t.Code, TrialCode = t.Trial.TrialCode, t.EmailCron, t.BusinessScenarioEnum, t.TrialId })
|
||||||
|
|
|
@ -27,7 +27,8 @@ namespace IRaCIS.Core.API
|
||||||
hangFireConfig.UseSqlServerStorage(hangFireConnStr, new SqlServerStorageOptions()
|
hangFireConfig.UseSqlServerStorage(hangFireConnStr, new SqlServerStorageOptions()
|
||||||
{
|
{
|
||||||
SchemaName = "dbo",
|
SchemaName = "dbo",
|
||||||
}).UseRecommendedSerializerSettings().UseSimpleAssemblyNameTypeSerializer();
|
}).UseRecommendedSerializerSettings();
|
||||||
|
// 移除 UseSimpleAssemblyNameTypeSerializer() 以避免类型加载问题
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue