gpt4 book ai didi

asp.net-mvc - 在 MVC 中拥有巨大的 Controller 或许多 Controller 更好?

转载 作者:行者123 更新时间:2023-12-03 05:32:48 27 4
gpt4 key购买 nike

我们正在 ASP.NET MVC 中构建一个相当大的 HR 应用程序,到目前为止,我们的 Controller 变得相当大。例如,我们有一个员工 Controller ,并且包含所有员工 View (个人信息、员工扣除额、家属等)。每个 View 都可能有多个操作或 subview (例如 CRUD)。每个 Action 相对较小,但 Controller 可能有几十个功能。

是否有拆分 Controller 的最佳实践?与其使用具有数十个 View 的 Employee Controller ,不如为每种子类型(即 EmployeePersonalInfoController、EmployeeDeductionController、EmployeeDependentController)使用一个 Controller 会更好吗?

最后,这重要吗?

更新说明

我最初关心的是 CRUD 操作。例如,让我们考虑创建和删除...

EmployeeController 中的当前操作:

  CreateEmployee()
DeleteEmployee()
CreateEmployeeDeduction()
DeleteEmployeeDeduction()
CreateDependent()
DeleteDependent()
etc.

如果 Controller 被拆分:

  EmployeeController
Create()
Delete()
EmployeeDeductionController
Create()
Delete()
EmployeeDependentController
Create()
Delete()
EmployeeBenefitController
Create()
Delete()
etc.

在第一个场景中,我们的约 100 个屏幕被分成 8-10 个大型 Controller 。在第二个中,我可能有大约 50 个 Controller 。

最佳答案

Partial classes允许您将您的类分布在多个文件中。这样,您可以将 Controller 的相关区域分组到单独的文件中,但它们仍然是同一 Controller 的一部分。例如

EmployeeDeductionController.cs

public partial class EmployeeController
{
public ActionResult Deduct()
{
}
// etc
}

EmployeeBenefitController.cs

public partial class EmployeeController
{
public ActionResult GiveBenefit()
{
}
// etc
}

关于asp.net-mvc - 在 MVC 中拥有巨大的 Controller 或许多 Controller 更好?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1197908/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com