根据另一个集合中列出的类型创建元素集合



背景

我正在使用.NET 5和Quartz.NET。我想用触发器做很多工作(但每个工作都是单独的(。创建作业的示例代码:

IJobDetail newJob = JobBuilder.Create<MyJob>()
.WithIdentity("myJob", "myGroup")
.Build();

MyJob是包含Execute方法的类,该方法具有要作为作业执行的代码。我有很多这样的课。我想创建通用方法,以便从包含类作为类型的列表中创建新作业(或者以不同的方式,我愿意接受建议(。

我的概念的伪代码:

foreach(Type t in types)
{
IJobDetail newJob = JobBuilder.Create<t>()
.WithIdentity("myJob", "myGroup")
.Build();
}

问题

我的问题是:有办法做到这一点吗?我在Stack上看到了一些关于使用类似集合中的类型制作List的线程,但我无法将其适应我的代码。我真的不想重复这样的代码,因为我不会配置太多这些作业。

解决方案

Quartz.NET似乎共享了在作业构造函数中使用Type变量的方法:.OfType(Type type)

IJobDetail newJob = JobBuilder.Create()
.OfType(jobType)
.WithIdentity("myJob", "myGroup")
.Build();

相关内容

  • 没有找到相关文章

最新更新