如何在创建新对象时设置外部属性的值

时间:2016-01-13 21:58:14

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

我是ASP.NET的新手,一开始我想为电影商店制作简单的网络应用。 我创建了MovieDirectorActor类等。我想在创建新的Movie对象时添加导演和一些演员。 这是我的Movie模型:

public class Movie {

    public Movie() { }

    public int MovieID { get; set; }
    public String Title { get; set; }
    public int Rating { get; set; }
    public int Price { get; set; }
    public virtual Director Director { get; set; }
    public virtual List<Actor> Actors { get; set; }

}

这是我的控制器(Create部分):

        // GET: Movies/Create
    public ActionResult Create()
    {
        ViewBag.DirectorsList = db.Directors.ToList();
        ViewBag.ActorsList = db.Actors.ToList();
        return View();
    }

    // POST: Movies/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 = "MovieID,Title,Price")] Movie movie)
    {
        if (ModelState.IsValid)
        {
            db.Movies.Add(movie);
            db.SaveChanges();
            return RedirectToAction("Index");
        }

        return View(movie);
    }

这是我的观点的一部分,我在其中创建DropDownList来选择电影的导演(演员的工作方式相同):

@Html.DropDownListFor(model => model.Director, new SelectList(ViewBag.DirectorsList, "DirectorID", "Name"))

所以我的问题是我真的不知道在创建新电影时如何设置Director和Actors属性。我尝试添加&#34; Director,Actors&#34;绑定,但不起作用。

0 个答案:

没有答案