例如:随MVC一起发货的默认项目具有AccountController,其中包含登录、注销、注册等操作,似乎违反了单一职责原则。
那么问题是如何解决这个问题并分离出关注点?最初的回应可能只是创建单独的控制器。
AccountLoginController
AccountRegisterController
但是从客户的角度来看,这并不是一个很好的体验,因为它会影响请求资源时的URI。
一种解决方案是为每个控制器设置单独的文件夹,其中包含每个操作的单独类文件,每个类只有一个职责,如下所示。
Controllers (folder)
Account (folder)
Register.cs
Login.cs
Logout.cs
AnotherController (folder)
Actionfile.cs
Actionfile.cs
上述方法将功能分离,高内聚。
所以,这是一个长的解释,但我的问题是...
- 有人之前实现过吗? - 如果是,你如何去做? - 对于这种模式,您有什么想法?