使用我自己的MyJobAgent 继承自JobAgent
public abstract class MyJobAgent : JobAgent { // 我自己的一些共通实现 }
具体的job实现:
public class Job1 : MyJobAgent { // 具体Job实现 }
这时候会出现:
Job1 is not registered!
其中源码\Hangfire.HttpJob.Agent\Config\JobAgentServiceConfigurer.cs line123中:
var agengList = (from t in types
where t.BaseType = typeof(JobAgent) &&
!t.IsAbstract &&
!t.IsInterface
select t).ToList();
我上述实现中t.BaseType和typeof(JobAgent)是永远不相等的,是否可以改成(不清楚会不会对其他实现有影响):
var agengList = (from t in types
where typeof(JobAgent).IsAssignableFrom(t) &&
!t.IsAbstract &&
!t.IsInterface
select t).ToList();
public abstract class MyJobAgent : JobAgent { // 我自己的一些共通实现 }
public class Job1 : MyJobAgent { // 具体Job实现 }
这时候会出现: Job1 is not registered!
其中源码\Hangfire.HttpJob.Agent\Config\JobAgentServiceConfigurer.cs line123中: var agengList = (from t in types where t.BaseType = typeof(JobAgent) && !t.IsAbstract && !t.IsInterface select t).ToList();
我上述实现中t.BaseType和typeof(JobAgent)是永远不相等的,是否可以改成(不清楚会不会对其他实现有影响): var agengList = (from t in types where typeof(JobAgent).IsAssignableFrom(t) && !t.IsAbstract && !t.IsInterface select t).ToList();