コード例 #1
0
 private static ActivityStatus ToStatus(ReadingUnitStatusVM vm)
 {
     return(vm switch
     {
         ReadingUnitStatusVM.Active => new CurrentlyActive(),
         ReadingUnitStatusVM.Planned => new Planned(),
         ReadingUnitStatusVM.Retired => new Retired(),
         _ => throw new NotSupportedException("The supplied status wasn't recognized")
     });
コード例 #2
0
 public Task <IActionResult> ChangeStatus([FromQuery] string programId, [FromQuery] string unitId, [FromQuery] ReadingUnitStatusVM newStatus)
 {
     return(WorkOnProgram(programId, async program =>
     {
         var statusToChangeTo = ToStatus(newStatus);
         await program.ChangeStatus(unitId, statusToChangeTo);
         return Ok();
     }));
 }