使用多个是一个好习惯吗

Is it a good practice to use multuple

我对 breeze 很陌生。在我们的应用程序中,我们有多个存储库和一个 breeze API 控制器来处理通信。然而,由于应用程序很大,breeze 控制器被分成几个部分 classes,分离关注点。例如,我们有相关的存储库来处理 Location、Holiday 和 Service 实体,并且为了与这些实体进行通信,我们使用一个部分 class 控制器。还有其他几个用于其他存储库。

//ClientLocationController.cs
public partial class ClientController : ApiController {
      //handles location related communication
}

//ClientUserController.cs
public partial class ClientController : ApiController {
      //handle user related communication
}

我的问题是,使用扩展 BreezeController 的多个控制器是否是一种不好的做法?在上面的例子中,我们可以使用两个控制器来代替部分 class 吗?

//ClientLocationController.cs
 public class ClientLocationController : ApiController {
      //handles location related communication
}


//ClientUserController.cs
public class ClientUserController : ApiController {
      //handle user related communication
}

我们在 MVC 中使用这种类型的设计。在 Breeze 中做同样的事情是不好的做法吗?

对不同的功能区域使用单独的控制器 classes 或 "domains" 是分离关注点的常用方法。

如果您有许多功能区域,每个功能区域都有自己的实体集,那么单独的控制器 classes 尤其有用。

有些甚至可能对每个实体类型使用一个控制器。

以您描述的方式使用部分 classes 更像是一种类似于代码 regions 的代码组织实践(或反实践)。如果你真的想把东西分开,应该避免的东西。

有关部分 class 个用例的更多信息:When is it appropriate to use C# partial classes?