我应该在asp.net MVC中为主/细节操作创建一个新的控制器吗?
本文关键字:一个 控制器 创建 操作 MVC net asp 细节 我应该 | 更新日期: 2023-09-27 18:09:27
在MVC5项目中,有几个主/详细实体,如下所示为Group/Student:
public class Group
{
[Key]
public int Id { get; set; }
public string Name { get; set; }
//Navigation Properties
public virtual ICollection<GroupStudent> GroupStudents { get; set; }
}
public class GroupStudent
{
[Key]
public int Id { get; set; }
//Foreign key for Group
public int GroupId { get; set; }
//Foreign key for Student
public int StudentId { get; set; }
//Navigation Properties
public virtual Group Group { get; set; }
public virtual Student Student { get; set; }
}
public class Student
{
[Key]
public int Id { get; set; }
public string Name { get; set; }
//Navigation Properties
public virtual ICollection<GroupStudent> GroupStudents { get; set; }
}
我创建了一个新的控制器:组和学生和定义列表,创建,详细信息和编辑方法和视图在相关的控制器。另一方面,我需要进行主/细节操作,即将学生分配给组。在这一步,由于以下情况,我不确定关于这个问题的好方法:
我应该创建一个新的控制器(即GroupStudentController)为了这些主/细节操作?或者我应该在StudentController或GroupController中创建必要的方法吗?对于这种主/细节操作,真正的惯例是什么?
无需创建额外的控制器,只需在任何现有控制器中创建一个方法,并根据所需方法的业务需要选择控制器。
示例:如果你有一个方法应该分配一个学生到一个组,这个动作将从学生列表页面完成,然后把它放在学生控制器中,如果你有一个页面,将从组列表中弹出来管理所选组的学生,然后把它放在组控制器中。
让你的业务驱动。