使用多个是一个好习惯吗
Posted
技术标签:
【中文标题】使用多个是一个好习惯吗【英文标题】:Is it a good practice to use multuple 【发布时间】:2015-01-27 06:58:28 【问题描述】:我对微风很陌生。在我们的应用程序中,我们有多个存储库和一个微风 API 控制器来处理通信。但是,由于应用程序很大,因此微风控制器被分成几个部分类,从而分离了关注点。例如,我们有相关的存储库来处理位置、假期和服务实体,并且为了与这些实体进行通信,我们使用一个部分类控制器。还有其他几个用于其他存储库。
//ClientLocationController.cs
public partial class ClientController : ApiController
//handles location related communication
//ClientUserController.cs
public partial class ClientController : ApiController
//handle user related communication
我的问题是,使用多个扩展 BreezeController 的控制器是一种不好的做法吗?在上面的例子中,我们可以使用两个控制器来代替分部类吗?
//ClientLocationController.cs
public class ClientLocationController : ApiController
//handles location related communication
//ClientUserController.cs
public class ClientUserController : ApiController
//handle user related communication
我们在 MVC 中使用这种类型的设计。在 Breeze 中做同样的事情是不好的做法吗?
【问题讨论】:
【参考方案1】:为不同的功能区域或“域”使用单独的控制器类是分离关注点的常用方法。
如果您有许多功能区域,并且每个功能区域都有自己的实体集,那么单独的控制器类尤其有用。
有些人甚至可能为每种实体类型使用一个控制器。
以您描述的方式使用部分类将被视为类似于代码regions 的代码组织实践(或反实践)。如果您真的想分开事物,应该避免的事情。
关于部分类用例的更多信息:When is it appropriate to use C# partial classes?
【讨论】:
感谢您的回复。我知道使用 MVC 这样做是有意义的,但是在使用轻风时,我们是否需要将其保存在单个控制器中,以便所有客户端通信都通过一个点?或者我们是否也可以使用带有微风的单独控制器? 独立的控制器是个好东西。更新我的答案以使其更清楚。以上是关于使用多个是一个好习惯吗的主要内容,如果未能解决你的问题,请参考以下文章
单个 Try Catch 块中的多个 JDBC 语句。是好习惯吗?