Итак, чтобы уточнить, вы хотите, чтобы ваш веб-интерфейс вызывал вашу веб-службу, которая, в свою очередь, обращается к базе данных?
Это именно тот путь, который я выбрал для недавнего проекта, и я думаю, что это было ошибкой, потому что в итоге вы создали много дополнительной работы. И вот почему:
Когда вы кодируете свой веб-сервис, вы создадите библиотеку для переноса вызовов базы данных, что типично. Там нет проблем.
Но затем, когда вы закодируете свой веб-интерфейс, вы в конечном итоге создадите еще одну библиотеку для переноса вызовов в интерфейс REST ... потому что в противном случае выполнение громких HTTP-вызовов станет громоздким. *
Итак, вы, по сути, создали 2 библиотеки доступа к данным, одну для переноса БД, а другую для переноса вызовов веб-службы. Это в основном удваивает объем работы, которую вы выполняете, потому что для каждой операции над ресурсом вы будете реализовывать обе библиотеки. Это очень быстро утомляет.
Более простая альтернатива - создать единую библиотеку, которая, как и прежде, обертывает доступ к базе данных, а затем использовать эту библиотеку из ОБА веб-интерфейса и веб-службы.
Это предполагает, что ваш веб-интерфейс и веб-служба находятся в одной сети и оба имеют прямой доступ к внутреннему серверу базы данных (что было для меня). В этой настройке одновременное обращение к базе данных также намного эффективнее, чем при использовании пользовательского интерфейса через веб-службу.