在mvc ActionResult方法参数中使用“BIND”有什么用处

时间:2016-02-29 13:18:14

标签: c# asp.net-mvc entity-framework asp.net-mvc-4

在mvc-5应用程序中,我创建了一个名为Album的类。

我想让CRUID选项变得简单然后创建:带有使用Entity Framework的视图的MVC5控制器。

完成此对话框后:

enter image description here

它在模型目录中创建了一个类,在视图和控制器目录中创建了一些文件。

在控制器目录中

它创建了一个控制器,其中包含这段代码,其中有一行代码我不知道它是什么:

 // GET: Albums/Create
    public ActionResult Create()
    {
        ViewBag.ArtistId = new SelectList(db.Artists, "ArtistId", "ArtistName");
        ViewBag.GenreId = new SelectList(db.Genres, "GenreId", "Name");
        return View();
    }

    // POST: Albums/Create
    // To protect from overposting attacks, please enable the specific properties you want to bind to, for 
    // more details see http://go.microsoft.com/fwlink/?LinkId=317598.
    [HttpPost]
    [ValidateAntiForgeryToken]
    public ActionResult Create([Bind(Include = "AlbumId,GenreId,ArtistId,Title,Price,AlbumArtUrl")] Album album)
    {
        if (ModelState.IsValid)
        {
            db.Albums.Add(album);
            db.SaveChanges();
            return RedirectToAction("Index");
        }

        ViewBag.ArtistId = new SelectList(db.Artists, "ArtistId", "ArtistName", album.ArtistId);
        ViewBag.GenreId = new SelectList(db.Genres, "GenreId", "Name", album.GenreId);
        return View(album);
    }

这一行的含义是什么:

public ActionResult Create([Bind(Include = "AlbumId,GenreId,ArtistId,Title,Price,AlbumArtUrl")] Album album)

请深刻解释我不理解Bind和Include的使用

感谢。

0 个答案:

没有答案