/// <summary> /// Update specific fields of alert /// </summary> /// <param name="alert"></param> /// <param name="updateAlertModel"></param> /// <returns>the updated alert</returns> public async Task <Alert> UpdateAlert(Alert alert, UpdateAlertModel updateAlertModel) { if (alert == null) { throw new ArgumentNullException(nameof(alert)); } if (!Enum.TryParse <AlertStatus>(updateAlertModel.UpdateStatus, true, out var status)) { throw new ArgumentOutOfRangeException(nameof(alert.Status)); } alert.Status = status; if (!Enum.TryParse <AlertFeedback>(updateAlertModel.Feedback, true, out var feedback)) { throw new ArgumentOutOfRangeException(nameof(alert.Feedback)); } alert.Feedback = feedback; if (!string.IsNullOrEmpty(updateAlertModel.Comments)) { alert.Comments = updateAlertModel.Comments; } alert.AssignedTo = await GetMyEmailAddress(); return(await graphClient.Security.Alerts[alert.Id].Request().UpdateAsync(alert)); }
/// <summary> /// Update specific fields of alert /// </summary> /// <param name="alert"></param> /// <param name="updateAlertModel"></param> /// <returns>the updated alert</returns> public async Task <Alert> UpdateAlert(Alert alert, UpdateAlertModel updateAlertModel) { if (alert == null) { throw new ArgumentNullException(nameof(alert)); } if (!Enum.TryParse <AlertStatus>(updateAlertModel.UpdateStatus, true, out var status)) { throw new ArgumentOutOfRangeException(nameof(alert.Status)); } alert.Status = status; if (!Enum.TryParse <AlertFeedback>(updateAlertModel.Feedback, true, out var feedback)) { throw new ArgumentOutOfRangeException(nameof(alert.Feedback)); } alert.Feedback = feedback; if (!string.IsNullOrEmpty(updateAlertModel.Comments)) { updateAlertModel.Comments = updateAlertModel.Comments.Replace("\r", ""); char[] charSeperators = new char[] { '\n' }; List <string> comments = updateAlertModel.Comments.Split(charSeperators, StringSplitOptions.RemoveEmptyEntries).ToList(); alert.Comments = comments; } alert.AssignedTo = await GetMyEmailAddress(); return(await graphClient.Security.Alerts[alert.Id].Request().UpdateAsync(alert)); }