ASPMVCEntityFrameworkcore.Updatemanytomanyrelationshiponformpost
创始人
2024-09-20 04:30:48
0
  1. 首先在数据库中创建一个关系表(中间表)以保存多对多关系。
  2. 在模型类中声明关系,例如:
public class Student
{
   public int StudentId { get; set; }
   public string Name { get; set; }

   public ICollection Courses { get; set; }
}

public class Course
{
   public int CourseId { get; set; }
   public string Title { get; set; }

   public ICollection Students { get; set; }
}
  1. 在上述模型中使用 [ForeignKey] 和 [InverseProperty] 属性来指定相应的外键和反向导航属性。确保通过中间表建立正确的多对多关系。
  2. 在视图中使用 @Html.HiddenFor 和 @Html.CheckBoxFor 显示对应关系的数据和状态。
  3. 在控制器中,执行上述关系的更新操作,例如:
[HttpPost]
public IActionResult Edit(int studentId, List selectedCourseIds)
{
    Student student = _context.Students
        .Include(s => s.Courses)
        .Single(s => s.StudentId == studentId);

    student.Courses = new List();
    if (selectedCourseIds != null)
    {
        foreach (int courseId in selectedCourseIds)
        {
            Course course = _context.Courses.Find(courseId);
            student.Courses.Add(course);
        }
    }

    _context.SaveChanges();

    return RedirectToAction("Index");
}
  1. 在更新操作完成后,重定向到合适的视图页面。

相关内容

热门资讯

透视软件!wepoker分析(... 透视软件!wepoker分析(透视)其实存在有挂(详细辅助普及教程)1、点击下载安装,微扑克wpk插...
透视脚本!智星菠萝可以辅助吗(... 透视脚本!智星菠萝可以辅助吗(透视)详细辅助新版2025教程(真是有挂)智星菠萝可以辅助吗辅助器中分...
透视神器(WePoKer)微扑... 透视神器(WePoKer)微扑克怎么用ai辅助(透视)详细辅助wpk教程1、不需要AI权限,帮助你快...
透视ai!德普之星透视辅助软件... 透视ai!德普之星透视辅助软件(透视)详细辅助扑克教程(其实存在有挂)1、德普之星透视辅助软件ai辅...
透视脚本!xpoker辅助工具... 透视脚本!xpoker辅助工具(透视)真是是真的有挂(详细辅助科技教程);原来确实真的有挂(需添加指...
透视神器(wEpOke)wep... 透视神器(wEpOke)wepoke透明挂件(透视)详细辅助攻略方法;支持多人共享记分板与复盘,通过...
透视软件!德普之星透视辅助软件... 透视软件!德普之星透视辅助软件是真的吗(透视)详细辅助必备教程(原来真的是有挂)该软件可以轻松地帮助...
透视透视!wepoker可以开... 《透视透视!wepoker可以开透视吗(透视)最初真的是有挂(详细辅助黑科技教程)》 wepoker...
透视挂(wEpOke)云扑克辅... 透视挂(wEpOke)云扑克辅助透视(透视)详细辅助AA德州教程;1.云扑克辅助透视 ai辅助创建新...
透视辅助!智星德州有脚本吗(透... 透视辅助!智星德州有脚本吗(透视)详细辅助细节方法(竟然是真的有挂);一、智星德州有脚本吗AI软件牌...