public async Task <IActionResult> Removetutors(long[] id) { using (var txscope = new TransactionScope(TransactionScopeAsyncFlowOption.Enabled)) { try { foreach (var item in id) { var tutorObj = _tutorService.GetSingle(x => x.Id == item); if (tutorObj.Id != 0) { tutorObj.IsDelete = true; await _tutorService.UpdateAsync(tutorObj, Accessor, User.GetUserId()); _tutorService.Save(); var relevantObj = _relevantLessonService.GetAll().Where(x => x.TutorId == item); foreach (var deleteObj in relevantObj) { await _relevantLessonService.DeleteAsync(deleteObj, Accessor, User.GetUserId()); await _relevantLessonService.SaveAsync(); } } } //StaffLog if (User.IsInRole(UserRoles.Staff)) { await _staffLog.InsertAsync(new Log { CreatedDate = DateTime.UtcNow, StaffId = User.GetUserId(), Description = ResponseConstants.DeleteTutor }, Accessor, User.GetUserId()); } txscope.Complete(); return(JsonResponse.GenerateJsonResult(1, ResponseConstants.DeleteTutor)); } catch (Exception ex) { txscope.Dispose(); ErrorLog.AddErrorLog(ex, "Post-Tutor Delete"); return(JsonResponse.GenerateJsonResult(0, ResponseConstants.SomethingWrong)); } } }