Я создаю службу WebAPI для приложения, и я застрял на перекрестке дорог, я понимаю принципы SOLID и хочу реализовать свои услуги WebAPI в соответствии с этими принципами, однако я провел последние пару дней борясь с реализацией и хотели бы получить некоторые советы от сообщества.принцип единой ответственности webapi
The Single Ответственность принцип гласит, что каждый класс должен нести ответственность за одной части функциональных возможностей, предоставляемых программным обеспечением (см Solid Principles)
У меня есть два ApiControllers на данный момент, но будет гораздо больше , и у обоих в настоящее время есть функции Get, Post и Put, но для каждого контроллера также требуется функция поиска, и мой вопрос заключается в том, чтобы методы поиска были перемещены в отдельный ApiController, например, SearchController.
Например:
У меня есть контроллер пользователя
public class UserController : ApiController {
Get - returns a User
Post and Put - Add and update a User
}
и у меня есть контроллер пациента по той же схеме, как описано выше, должны я есть свои методы поиска в каждом контроллере я должен иметь SearchController, например.
public class SearchController : ApiController {
SearchUsers() - returns ICollection<User>
SearchPatients() - returns ICollection<Patient>
}
Я понимаю, что нет однозначного ответа, и будет так же, как некоторые советы по лучшей практике
«Поиск», вероятно, просто GET с фильтром, не так ли? – Padraic