ASP.NET MVC入门教程(六)文章的管理

ASP.NET MVC入门教程(六)文章的管理html

本部份内容主要包括前端

1.文章的编辑:文章的编辑部分前端视图与发表文章的视图基本一致测试

2.文章的删除ui

1、文章的编辑.net

1.建立文章的编辑视图code

在Article控制器的Edit(int id)方法内右键单击,选择添加视图htm

将Create视图的代码复制到Eidt视图中。教程

2.在Edit(int id)方法中输入如下代码。get

对于编辑,要先根据其id取得文章的内容,并在视图上进行呈现,以便于用户进行内容的修改.在操做以前,先修改一下ArticleCreateViewModel视图模型,为其加上id属性。若是咱们编辑也使用该视图模型,就必须有Id,不然,咱们在更新记录时,要用到其Id。若是不想修改该模型,就从新另建一个视图模型便可。string

public int id { get; set; }
        [Display(Name ="文章标题")]
        [Required(ErrorMessage ="文章标题不能为空")]
        [MinLength(6,ErrorMessage ="文章标题不能少于6个字符")]
        [MaxLength(30,ErrorMessage ="文章标题不能超过30个字符")]
        public string title { get; set; }
// GET: Article/Edit/5
        public ActionResult Edit(int id)
        {
            tb_article tArticle = db.tb_article.Find(id);
            ArticleCreateViewModel article = new ArticleCreateViewModel();
            article.id = id;
            article.title = tArticle.Name;
            article.author = tArticle.Author;
            article.content = tArticle.Content;
            return View(article);
        }

3.测试是否以在视图上显示数据,首先打开列表页(Index),从列表页点击编辑文章,以打开编辑文章视图页。

4.编写[HttpPost]的Edit方法

// POST: Article/Edit/5
        [HttpPost]
        [ValidateAntiForgeryToken]
        [ValidateInput(false)]
        public ActionResult Edit(ArticleCreateViewModel article)
        {
            if (ModelState.IsValid)
            {
                tb_article tArticle = db.tb_article.Find(article.id);
                tArticle.Name = article.title;
                tArticle.Author = article.author;
                tArticle.Content = article.content;

                db.Entry(tArticle).State = System.Data.Entity.EntityState.Modified;
                db.SaveChanges();

                return RedirectToAction("Index");
            }
            return View(article);
        }

2、文章的删除

1.修改文章列表页

删除文章时,直接在文章列表页点击“删除文章”,应该弹出对话框,询问用户是否肯定删除,若是肯定删除,则删除,不然,什么也不作。

<td>
            @Html.ActionLink("编辑文章", "Edit", new { id=item.id }) |
            @Html.ActionLink("文章内容", "Details", new { id=item.id }) |
            @Html.ActionLink("删除文章", "Delete", new { id=item.id }, new { @onclick = "return confirm('肯定要删除此记录吗?')" })
        </td>

new { @onclick = "return confirm('肯定要删除此记录吗?')" }用于弹出询问对话框,询问用户是否肯定删除文章

2.编写删除文章业务代码

删除Delete(int id)方法。在下面的的Delete方法中输入如下代码

[HttpPost]
public ActionResult Delete(int id)
{
    tb_article article = db.tb_article.Find(id);
    db.tb_article.Remove(article);
    db.SaveChanges();
    return RedirectToAction("Index");
}

3、测试文章的删除

相关文章
相关标签/搜索