/// <summary> /// Gets the progress of the long running task. /// </summary> /// <param name="taskId">The task identifier.</param> /// <returns>LongRunningInfo.</returns> /// <exception cref="System.ArgumentException">@Invalid task identifier</exception> public static LongRunningInfo GetProgress(string taskId) { Guid taskIdentifier; if (!Guid.TryParse(taskId, out taskIdentifier)) { throw new ArgumentException(@"Invalid task identifier", taskId); } return(LongRunningHelper.GetTaskInfo(taskIdentifier, true)); }
/// <summary> /// Cancels the task if it is still running or queued. /// </summary> /// <param name="taskId">The task identifier.</param> /// <exception cref="System.ArgumentException">@Invalid task identifier</exception> public static void CancelTask(string taskId) { Guid taskIdentifier; if (!Guid.TryParse(taskId, out taskIdentifier)) { throw new ArgumentException(@"Invalid task identifier", taskId); } LongRunningInfo info = LongRunningHelper.GetTaskInfo(taskIdentifier, false); if (info.Status == LongRunningStatus.InProgress || info.Status == LongRunningStatus.Queued) { LongRunningHelper.UpdateStatus(taskIdentifier, LongRunningStatus.Cancelled); } }