public ActionResult Edit(Post post, int[] selectedtags)
{
Post posttoupdate = PostServices.FindAllEntities(p => p.PostId == post.PostId, null, "Tags").FirstOrDefault();
if (TryUpdateModel(posttoupdate, "", null, new string[] { }))
{
try
{
UpdateModel(posttoupdate, "", null, new string[] { });
BlogServices.UpdatePost(posttoupdate, selectedtags);
return RedirectToAction("Index");
}
catch (DataException)
{
ModelState.AddModelError("", Resources.AppMessages.Error_Saving_Changes);
}
catch (ApplicationValidationErrorsException ex)
{
foreach (string str in ex.ValidationErrors)
{
ModelState.AddModelError("", str);
}
}
}
ViewBag.ImageId = new SelectList(ImageServices.FindAllEntities(null, null, null), "ImageId", "FileName", post.ImageId);
ViewBag.CategoryId = new SelectList(CategoryServices.FindAllEntities(null, null, null), "CategoryId", "Name", post.CategoryId);
ViewBag.UserId = new SelectList(UserServices.FindAllEntities(null, null, null), "UserId", "Username", post.UserId);
ViewBag.Tags = TagServices.FindAllEntities(null, o => o.OrderBy(t => t.TagName), null).ToDictionary<Tag, int, string>(t => t.TagId, t => t.TagName);
return View(posttoupdate);
}