public Comment SaveOrUpdateComment(ProjectEntity entity, Comment comment) { var isNew = comment.OldGuidId.Equals(Guid.Empty); if (isNew) { ProjectSecurity.DemandCreateComment(entity); } else { var message = entity as Message; if (message != null) { ProjectSecurity.DemandEditComment(message, comment); } else { ProjectSecurity.DemandEditComment(entity.Project, comment); } } SaveOrUpdate(comment); NotifyNewComment(entity, comment, isNew); GetProjectEntityEngine(comment).Subscribe(entity, SecurityContext.CurrentAccount.ID); return(comment); }