public ActionResult Add(CommentModel model) { var comment = new Comment { Body = model.Body, Date = DateTime.Now, SuggestionId = model.SuggestionId, Status = (int)CommentStatus.Active }; using (var container = new SuggestionBoxContainer()) { var suggestion = container.Suggestions.FirstOrDefault(s => s.Id == model.SuggestionId); suggestion.Comments.Add(comment); container.SaveChanges(); container.AcceptAllChanges(); var comments = suggestion.Comments .Where(c => c.Status != (int)CommentStatus.Deleted || UserIsAdmin) .OrderBy(c => c.Date).ToList(); return PartialView("Partials/_CommentList", comments.Select(ConvertCommentToModel).ToList()); } }
public ActionResult Approve(SuggestionModel model, string commentText) { using (var container = new SuggestionBoxContainer()) { var suggestion = container.Suggestions.FirstOrDefault(s => s.Id == model.Id); if (UserIsAdmin) { var comment = new Comment { Body = commentText, Date = DateTime.Now, Status = (int)CommentStatus.Active }; suggestion.Comments.Add(comment); suggestion.Status = (int)SuggestionStatus.Approved; container.SaveChanges(); container.AcceptAllChanges(); } return PartialView("Partials/_View", ConvertSuggestionToModel(suggestion)); } }
/// <summary> /// Create a new Comment object. /// </summary> /// <param name="id">Initial value of the Id property.</param> /// <param name="body">Initial value of the Body property.</param> /// <param name="date">Initial value of the Date property.</param> /// <param name="suggestionId">Initial value of the SuggestionId property.</param> /// <param name="status">Initial value of the Status property.</param> public static Comment CreateComment(global::System.Int32 id, global::System.String body, global::System.DateTime date, global::System.Int32 suggestionId, global::System.Int32 status) { Comment comment = new Comment(); comment.Id = id; comment.Body = body; comment.Date = date; comment.SuggestionId = suggestionId; comment.Status = status; return comment; }
private CommentModel ConvertCommentToModel(Comment comment) { var model = Mapper.Map<Comment, CommentModel>(comment); model.CanBeDeleted = UserIsAdmin && model.Status != CommentStatus.Deleted; model.CanBeUndeleted = UserIsAdmin && model.Status == CommentStatus.Deleted; return model; }
/// <summary> /// Deprecated Method for adding a new object to the Comments EntitySet. Consider using the .Add method of the associated ObjectSet<T> property instead. /// </summary> public void AddToComments(Comment comment) { base.AddObject("Comments", comment); }