/// <summary> /// This method get all information about specific project from GetProjectUpdates on Data Access layer based on the projectID. /// The URL defined on route config look like ProjectList/GetprojectUpdates/{projectID}. /// The json format is clear from the foreach loop and the controller for angular can be found on Project-List.js. /// </summary> /// <param name="projectID">Guid ProjectID as string</param> /// <returns>Returns a string includes list of ProjectUpdates for the specified Project</returns> public string GetprojectUpdates(string projectID) { //var ProjectUpdateKeys = DataAccsess.GetUpdatesForKey(projectID); //string result = JsonConvert.SerializeObject(ProjectUpdateKeys); //return result; var passedStatusUpdateList = new List <StatusUpdatesModel.ProjectUpdate>(); try { if (this.Session["username"].ToString() != null && DataAccsess.IsUserAuthorized(this.Session["username"].ToString())) { var statusData = DataAccsess.GetProjectUpdates(projectID); foreach (StatusUpdatesModel.ProjectUpdate passedStatusUpdate in statusData) { StatusUpdatesModel.ProjectUpdate tempStatusUpdate = new StatusUpdatesModel.ProjectUpdate(); tempStatusUpdate.Phase = passedStatusUpdate.Phase; tempStatusUpdate.PhaseID = passedStatusUpdate.PhaseID; tempStatusUpdate.ProjectID = passedStatusUpdate.ProjectID; tempStatusUpdate.Date = passedStatusUpdate.Date; //tempStatusUpdate.Project = passedStatusUpdate.Project; tempStatusUpdate.Subject = passedStatusUpdate.Subject; tempStatusUpdate.Phase = passedStatusUpdate.Phase; tempStatusUpdate.Environment = passedStatusUpdate.Environment; tempStatusUpdate.Description = passedStatusUpdate.Description; tempStatusUpdate.Body = passedStatusUpdate.Body; tempStatusUpdate.Project = passedStatusUpdate.Project; tempStatusUpdate.StatusUpdates = passedStatusUpdate.StatusUpdates; //tempStatusUpdate.Vertical = passedStatusUpdate.Vertical; tempStatusUpdate.ProjectUpdateID = passedStatusUpdate.ProjectUpdateID; passedStatusUpdateList.Add(tempStatusUpdate); } } } catch (Exception e) { string emptyException = JsonConvert.SerializeObject(""); return(emptyException); } JsonSerializerSettings settings = new JsonSerializerSettings(); settings.PreserveReferencesHandling = PreserveReferencesHandling.Objects; string result = JsonConvert.SerializeObject(passedStatusUpdateList, settings); return(result); }
/// <summary> /// This method get all information about specific project from GetProjectUpdates on Data Access layer based on the projectID. /// The URL defined on route config look like ProjectList/GetprojectUpdates/{projectID}. /// The json format is clear from the foreach loop and the controller for angular can be found on Project-List.js. /// </summary> /// <param name="projectID">Guid ProjectID as string</param> /// <returns>Returns a string includes list of ProjectUpdates for the specified Project</returns> public string GetprojectUpdates(string projectID) { //var ProjectUpdateKeys = DataAccsess.GetUpdatesForKey(projectID); //string result = JsonConvert.SerializeObject(ProjectUpdateKeys); //return result; var passedStatusUpdateList = new List<StatusUpdatesModel.ProjectUpdate>(); try { if (this.Session["username"].ToString() != null && DataAccsess.IsUserAuthorized(this.Session["username"].ToString())) { var statusData = DataAccsess.GetProjectUpdates(projectID); foreach (StatusUpdatesModel.ProjectUpdate passedStatusUpdate in statusData) { StatusUpdatesModel.ProjectUpdate tempStatusUpdate = new StatusUpdatesModel.ProjectUpdate(); tempStatusUpdate.Phase = passedStatusUpdate.Phase; tempStatusUpdate.PhaseID = passedStatusUpdate.PhaseID; tempStatusUpdate.ProjectID = passedStatusUpdate.ProjectID; tempStatusUpdate.Date = passedStatusUpdate.Date; //tempStatusUpdate.Project = passedStatusUpdate.Project; tempStatusUpdate.Subject = passedStatusUpdate.Subject; tempStatusUpdate.Phase = passedStatusUpdate.Phase; tempStatusUpdate.Environment = passedStatusUpdate.Environment; tempStatusUpdate.Description = passedStatusUpdate.Description; tempStatusUpdate.Body = passedStatusUpdate.Body; tempStatusUpdate.Project = passedStatusUpdate.Project; tempStatusUpdate.StatusUpdates = passedStatusUpdate.StatusUpdates; //tempStatusUpdate.Vertical = passedStatusUpdate.Vertical; tempStatusUpdate.ProjectUpdateID = passedStatusUpdate.ProjectUpdateID; passedStatusUpdateList.Add(tempStatusUpdate); } } } catch (Exception e) { string emptyException = JsonConvert.SerializeObject(""); return emptyException; } JsonSerializerSettings settings = new JsonSerializerSettings(); settings.PreserveReferencesHandling = PreserveReferencesHandling.Objects; string result = JsonConvert.SerializeObject(passedStatusUpdateList, settings); return result; }