public JsonResult CreateLabel(string name)
        {
            try
            {
                var label = new PostLabel {
                    Name = name
                };

                using (DbContextTransaction transaction = _context.Database.BeginTransaction())
                {
                    _context.PostLabels.Add(label);
                    _context.SaveChanges();

                    transaction.Commit();
                }//end transaction

                return(Json(new { label.Id, label.Name }));
            }
            catch (Exception ex)
            {
                Response.StatusCode        = 500;
                Response.StatusDescription = ex.Message;
            }

            return(Json(string.Empty));
        }
        public void InsertPostLabel(PostLabel label)
        {
            if (label == null)
            {
                throw new ArgumentNullException("label");
            }

            _postLabelRepository.Insert(label);

            //cache
            _cacheManager.RemoveByPattern(POSTLABELS_PATTERN_KEY);
        }