我想通過構建一個功能齊全的網站來學習MVC。我有點卡住,當涉及到處理表單,並張貼數據和模型....模型的ASP.NET MVC表格
BTW:我使用EF代碼優先W/MS SQL CE
這裏的
public class Assignment
{
public int AssignmentID { get; set; }
public int? CourseID { get; set; }
public string Name { get; set; }
// etc...
public virtual Course Course { get; set; }
}
public class Course
{
public int CourseID { get; set; }
// etc...
}
我加載的局部視圖,允許用戶添加新的任務
控制器:
問題模型public ActionResult Assignments()
{
var assignments = myContext.Assignments.OrderBy(x => x.DueDate);
return View(assignments);
}
[HttpPost]
public ActionResult AddAssignment(Assignment assignment)
{
myContext.Assignments.Add(assignment);
myContext.SaveChanges();
return RedirectToAction("Assignments");
}
// Returns a strongly-typed, partial view (type is Assignment)
public ActionResult AddAssignmentForm()
{
return PartialView();
}
這裏是我被卡住的地方:我希望這個表格有一個下拉列表,用於不同課程的分配可能屬於。例如,名爲的任務「第3章回顧,問題1-77」可能屬於課程「預代數」。但是,如果我使用下面的代碼,我必須顯式聲明SelectListItems。我認爲,使用上面給定的Assignment模型,我應該可以使用MVC awesomeness自動生成的課程下拉列表。我究竟做錯了什麼?
AddAssignment管窺:
@model MyModels.Assignment
@using(Html.BeginForm("AddAssignment", "Assignments"))
{
// Can't I create a drop down list without explicitly
// setting all of the SelectListItems?
@Html.DropDownListFor(x => x.Course, ....
}
我認爲你高估了精彩。 – Zruty