@@ -285,10 +285,10 @@ public async Task<ApiResponse> ResumeAll()
285285
286286 //CAK
287287 [ HttpGet ]
288- public async IAsyncEnumerable < ScheduleModel > GetAllJobsAsync ( ScheduleJobFilter filter = null )
288+ public async Task < List < ScheduleModel > > GetAllJobsAsync ( ScheduleJobFilter filter )
289289 {
290290 var jobGroupNames = await Scheduler . GetJobGroupNames ( ) ;
291-
291+ var list = new List < ScheduleModel > ( jobGroupNames . Count ) ;
292292 foreach ( var jobGrp in jobGroupNames )
293293 {
294294 if ( filter != null && ! filter . IncludeSystemJobs )
@@ -301,12 +301,13 @@ public async IAsyncEnumerable<ScheduleModel> GetAllJobsAsync(ScheduleJobFilter f
301301
302302 foreach ( var jobKey in jobKeys )
303303 {
304- await foreach ( var job in GetScheduleModelsAsync ( jobKey ) )
304+ foreach ( var job in await GetScheduleModelsAsync ( jobKey ) )
305305 {
306- yield return job ;
306+ list . Add ( job ) ;
307307 }
308308 }
309309 }
310+ return list ;
310311 }
311312
312313 [ HttpGet ]
@@ -607,11 +608,12 @@ private async Task<ScheduleModel> CreateScheduleModel(IJobDetail jobDetail, ITri
607608 } ;
608609 }
609610
610- private async IAsyncEnumerable < ScheduleModel > GetScheduleModelsAsync ( JobKey jobkey )
611+ private async Task < List < ScheduleModel > > GetScheduleModelsAsync ( JobKey jobkey )
611612 {
612613 IJobDetail jobDetail = null ;
613614 IReadOnlyCollection < ITrigger > jobTriggers = null ;
614615 ScheduleModel exceptionJob = null ;
616+ var list = new List < ScheduleModel > ( ) ;
615617 try
616618 {
617619 jobTriggers = await Scheduler . GetTriggersOfJob ( jobkey ) ;
@@ -635,7 +637,7 @@ private async IAsyncEnumerable<ScheduleModel> GetScheduleModelsAsync(JobKey jobk
635637 if ( jobTriggers == null || ! jobTriggers . Any ( ) )
636638 {
637639 exceptionJob . TriggerType = TriggerType . Unknown ;
638- yield return exceptionJob ;
640+ list . Add ( exceptionJob ) ;
639641 }
640642 else
641643 {
@@ -646,27 +648,29 @@ private async IAsyncEnumerable<ScheduleModel> GetScheduleModelsAsync(JobKey jobk
646648 jobModel . JobGroup = exceptionJob . JobGroup ;
647649 jobModel . JobStatus = exceptionJob . JobStatus ;
648650 jobModel . ExceptionMessage = exceptionJob . ExceptionMessage ;
649- yield return jobModel ;
651+ list . Add ( jobModel ) ;
650652 }
651653 }
652654 }
653655 else if ( jobTriggers == null || ! jobTriggers . Any ( ) )
654656 {
655- yield return new ScheduleModel
657+ var sm = new ScheduleModel
656658 {
657659 JobName = jobkey . Name ,
658660 JobGroup = jobkey . Group ,
659661 JobType = jobDetail ? . JobType . ToString ( ) ,
660662 JobStatus = JobStatus . NoTrigger
661663 } ;
664+ list . Add ( sm ) ;
662665 }
663666 else
664667 {
665668 foreach ( var trigger in jobTriggers )
666669 {
667- yield return await CreateScheduleModel ( jobDetail , trigger ) ;
670+ list . Add ( await CreateScheduleModel ( jobDetail , trigger ) ) ;
668671 }
669672 }
673+ return list ;
670674 }
671675
672676 private TriggerDetailModel CreateTriggerDetailModel ( ITrigger trigger )
@@ -683,7 +687,7 @@ private TriggerDetailModel CreateTriggerDetailModel(ITrigger trigger)
683687 EndTimeSpan = trigger . EndTimeUtc ? . TimeOfDay ,
684688 StartDate = trigger . StartTimeUtc . Date ,
685689 StartTimeSpan = trigger . StartTimeUtc . TimeOfDay ,
686- StartTimezone = TimeZoneInfo . Utc ,
690+ InTimeZoneId = TimeZoneInfo . Utc . Id ,
687691 TriggerType = triggerType ,
688692 ModifiedByCalendar = trigger . CalendarName ,
689693 Priority = trigger . Priority ,
@@ -709,7 +713,7 @@ private TriggerDetailModel CreateTriggerDetailModel(ITrigger trigger)
709713 case TriggerType . Cron :
710714 var cron = ( ICronTrigger ) trigger ;
711715 model . CronExpression = cron . CronExpressionString ;
712- model . InTimeZone = cron . TimeZone ;
716+ model . InTimeZoneId = cron . TimeZone . Id ;
713717 switch ( cron . MisfireInstruction )
714718 {
715719 case MisfireInstruction . CronTrigger . DoNothing :
@@ -738,7 +742,7 @@ private TriggerDetailModel CreateTriggerDetailModel(ITrigger trigger)
738742 model . RepeatCount = daily . RepeatCount ;
739743 model . TriggerInterval = daily . RepeatInterval ;
740744 model . TriggerIntervalUnit = daily . RepeatIntervalUnit . ToBlazoriseQuartzIntervalUnit ( ) ;
741- model . InTimeZone = daily . TimeZone ;
745+ model . InTimeZoneId = daily . TimeZone . Id ;
742746 model . StartDailyTime = new TimeSpan ( daily . StartTimeOfDay . Hour , daily . StartTimeOfDay . Minute , daily . StartTimeOfDay . Second ) ;
743747 model . EndDailyTime = new TimeSpan ( daily . EndTimeOfDay . Hour , daily . EndTimeOfDay . Minute , daily . EndTimeOfDay . Second ) ;
744748 break ;
@@ -759,7 +763,7 @@ private TriggerDetailModel CreateTriggerDetailModel(ITrigger trigger)
759763 }
760764 model . TriggerInterval = calTrigger . RepeatInterval ;
761765 model . TriggerIntervalUnit = calTrigger . RepeatIntervalUnit . ToBlazoriseQuartzIntervalUnit ( ) ;
762- model . InTimeZone = calTrigger . TimeZone ;
766+ model . InTimeZoneId = calTrigger . TimeZone . Id ;
763767 break ;
764768 }
765769
@@ -823,7 +827,7 @@ private ITrigger BuildTrigger(TriggerDetailModel triggerDetailModel, JobKey jobK
823827 x . WithMisfireHandlingInstructionIgnoreMisfires ( ) ;
824828 break ;
825829 }
826- x . InTimeZone ( triggerDetailModel . InTimeZone ) ;
830+ x . InTimeZone ( TimeZoneInfo . FindSystemTimeZoneById ( triggerDetailModel . InTimeZoneId ) ) ;
827831 } ) ;
828832 break ;
829833 case TriggerType . Daily :
@@ -850,7 +854,7 @@ private ITrigger BuildTrigger(TriggerDetailModel triggerDetailModel, JobKey jobK
850854 {
851855 x . EndingDailyAt ( triggerDetailModel . EndDailyTime . Value . ToTimeOfDay ( ) ) ;
852856 }
853- x . InTimeZone ( triggerDetailModel . InTimeZone ) ;
857+ x . InTimeZone ( TimeZoneInfo . FindSystemTimeZoneById ( triggerDetailModel . InTimeZoneId ) ) ;
854858 if ( triggerDetailModel . TriggerInterval > 0 && triggerDetailModel . TriggerIntervalUnit . HasValue )
855859 {
856860 x . WithInterval ( triggerDetailModel . TriggerInterval ,
@@ -934,7 +938,7 @@ private ITrigger BuildTrigger(TriggerDetailModel triggerDetailModel, JobKey jobK
934938 break ;
935939 }
936940
937- x . InTimeZone ( triggerDetailModel . InTimeZone ) ;
941+ x . InTimeZone ( TimeZoneInfo . FindSystemTimeZoneById ( triggerDetailModel . InTimeZoneId ) ) ;
938942 if ( triggerDetailModel . TriggerInterval > 0 && triggerDetailModel . TriggerIntervalUnit . HasValue )
939943 {
940944 x . WithInterval ( triggerDetailModel . TriggerInterval ,
0 commit comments