簡體   English   中英

根據另一個集合中列出的類型創建元素集合

[英]Create collection of elements based on types listed in another collection

背景

我正在使用 .NET 5 和 Quartz.NET。 我想用觸發器做很多工作(但每個工作都是獨立的)。 創建作業的示例代碼:

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

MyJob是 class 包含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();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM