私はこのすべてで本当に新しいです。私は現在、ASP.NET Web サイトでチュートリアル「Getting Started with EF using MVC」を読んでいます: (第 6 章)
チュートリアルの「インストラクター編集ページにコースの割り当てを追加する」というタイトルの部分で、著者はインストラクターページでコースを編集する方法について書いています。
public ActionResult Edit(int id)
{
Instructor instructor = db.Instructors
.Include(i => i.OfficeAssignment)
.Include(i => i.Courses)
.Where(i => i.InstructorID == id)
.Single();
PopulateAssignedCourseData(instructor);
return View(instructor);
}
public ActionResult Edit(int id, FormCollection formCollection, string[] selectedCourses)
{
var instructorToUpdate = db.Instructors
.Include(i => i.OfficeAssignment)
.Include(i => i.Courses)
.Where(i => i.InstructorID == id)
.Single();
if (TryUpdateModel(instructorToUpdate, "", null, new string[] { "Courses" }))
{
try
{
if (String.IsNullOrWhiteSpace(instructorToUpdate.OfficeAssignment.Location))
{
instructorToUpdate.OfficeAssignment = null;
}
UpdateInstructorCourses(selectedCourses, instructorToUpdate);
db.Entry(instructorToUpdate).State = EntityState.Modified;
db.SaveChanges();
return RedirectToAction("Index");
}
catch (DataException)
{
//Log the error (add a variable name after DataException)
ModelState.AddModelError("", "Unable to save changes. Try again, and if the problem persists, see your system administrator.");
}
}
PopulateAssignedCourseData(instructorToUpdate);
return View(instructorToUpdate);
}
アクションメソッドの削除と作成を達成するために(作成者と同じ概念を)使用する方法を教えてください。または、上記のチュートリアルと同様に、MVC での EF との多対多の関係、特にコントローラーを作成し、多対多の関連データを表示する方法について、役立つチュートリアル/サイトに案内していただければ幸いです。私はこれの初心者ですが、まだ作業を完了する必要があるため、使用される概念が一致すると非常に役立ちます。
よろしくお願いします!