Example #1
0
        public void Import()
        {
            var defaultAuthor = _userRepository.GetById(1);
            var files = Directory.GetFiles("data/blogposts/", "*.json");

            foreach (var file in files)
            {
                var post = JsonConvert.DeserializeObject<JsonPost>(File.ReadAllText(file));

                var existing = _blogRepository.GetByYearMonthAndSlug(post.Date.Year, post.Date.Month, post.Slug);
                if (existing != null) continue;

                var blogPost = new BlogPost
                {
                    Content = post.Content,
                    PublishedDate = post.Date,
                    Slug = post.Slug,
                    Title = post.Title,
                    User = defaultAuthor
                };

                Console.WriteLine("\tInserting post {0}", post.Title);

                _blogRepository.Insert(blogPost);
            }
        }
Example #2
0
        public ActionResult New(NewBlogPostDto dto)
        {
            if (!ModelState.IsValid)
                return View(dto);

            var currentUser = _userRepository.GetById(Convert.ToInt32(User.Identity.Name));

            var post = new BlogPost
            {
                Content = dto.Content,
                PublishedDate = DateTime.Now,
                Slug = _slugGenerator.Generate(dto.Title),
                Title = dto.Title,
                User = currentUser
            };

            _blogRepository.Insert(post);

            return RedirectToAction("Index");
        }