网站首页 网站源码
website
站点相关全部源代码,隐藏了一些关于服务器的信息
using System;
using Hangfire.Common;
using Hangfire.States;
using Hangfire.Storage;

namespace Dpz.Core.WebApi.Hangfire;

/// <summary>
/// 
/// </summary>
public class ProlongExpirationTimeAttribute : JobFilterAttribute, IApplyStateFilter
{
    /// <summary>
    /// 任务调度DB记录的天数 默认30天
    /// </summary>
    public int ExpirationTimeoutDays { get; set; }

    /// <summary>
    /// 
    /// </summary>
    /// <param name="context"></param>
    /// <param name="transaction"></param>
    public void OnStateApplied(ApplyStateContext context, IWriteOnlyTransaction transaction)
    {
        context.JobExpirationTimeout = TimeSpan.FromDays(ExpirationTimeoutDays <= 0 ? 30 : ExpirationTimeoutDays);
    }

    /// <summary>
    /// /
    /// </summary>
    /// <param name="context"></param>
    /// <param name="transaction"></param>
    public void OnStateUnapplied(ApplyStateContext context, IWriteOnlyTransaction transaction)
    {
    }
}
loading