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. 在更新操作完成后,重定向到合适的视图页面。

相关内容

热门资讯

第三方插件!竞技联盟透视,德普... 第三方插件!竞技联盟透视,德普辅助软件,其实真的是有挂(有挂解密)1、下载好德普辅助软件脚本下载之后...
终于知道!鸿狐拼十辅助,超级三... 终于知道!鸿狐拼十辅助,超级三加一辅助工具安装,详细插件(有挂技巧)运超级三加一辅助工具安装辅助工具...
反观!菠萝德州透视脚本,德扑之... 您好,德扑之星私人局辅助器这款游戏可以开挂的,确实是有挂的,需要了解加去威信【136704302】很...
必备辅助推荐!网易游戏辅助软件... 必备辅助推荐!网易游戏辅助软件,潮友软件辅助器脚本,详细挂(有挂秘诀)1、让任何用户在无需潮友软件辅...
黑科技技巧!WePoKer辅助... 您好,德普辅助器怎么用这款游戏可以开挂的,确实是有挂的,需要了解加去威信【136704302】很多玩...
一分钟带你了解!欢乐情怀开挂,... 您好,hhpoker作笔实战视频这款游戏可以开挂的,确实是有挂的,需要了解加去威信【13670430...
据通报!德州机器人代打脚本,德... 据通报!德州机器人代打脚本,德普之星有透视辅助吗,真是是真的有挂(有挂秘籍)1、很好的工具软件,可以...
技巧知识分享!微信微乐辅助插件... 技巧知识分享!微信微乐辅助插件,温州茶苑辅助器,详细教程(证实有挂)1、每一步都需要思考,不同水平的...
推出新举措!wepoker插件... 推出新举措!wepoker插件辅助,德普之星透视辅助软件是真的吗,一贯真的有挂(真的有挂)1、游戏颠...
大神推荐!来几局辅助器开挂,链... 大神推荐!来几局辅助器开挂,链接大厅辅助插件有哪些,详细插件(讲解有挂)大神推荐!来几局辅助器开挂,...