//
        // GET: /Article/Create
        public ActionResult Create()
        {
            var viewModel = new ArticleEditViewModel()
            {
                Article = new Article(),
                Authors = _authors.RetrieveAll(),
                Tags = _tags.RetrieveAll()
            };

            return View( viewModel);
        }
        public ActionResult Create( Article article)
        {
            try
            {
                _articles.Insert( ParseTags( article));
                return RedirectToAction("Index");
            }
            catch( Exception exception)
            {
                ViewBag.ErrorMessage = exception.Message;
                var viewModel = new ArticleEditViewModel()
                {
                    Article = article,
                    Authors = _authors.RetrieveAll(),
                    Tags = _tags.RetrieveAll()
                };

                return View( viewModel);
            }
        }
        //
        // GET: /Article/Edit/5
        public ActionResult Edit(int articleId)
        {
            var viewModel = new ArticleEditViewModel()
            {
                Article = _articles.RetrieveById( articleId),
                Authors = _authors.RetrieveAll(),
                Tags = _tags.RetrieveAll()
            };

            return View( viewModel);
        }