Проверьте эту ссылку (извините, по-испански, возможно, вам понадобится небольшая помощь с этим, но мне удалось заставить ее работать)
Проверьте этот код, он может вам помочь
Несмотря на то, что является хорошей практикой, когда клиент не обращается напрямую к БД, бывают случаи, когда это именно то, что вам нужно, и веб-служба в середине, ну, вряд ли будет работать нормально.
Я 6 лет проработал в автомобильной промышленности, занимаясь интенсивным использованием клиентских приложений на C #, которые подключаются к серверу SQL для хранения производственной информации, и это стандартная процедура, поэтому, если вам удастся запросить учетные данные у пользователя или сохранить соединение Зафиксируйте где-нибудь еще и загружайте каждый раз, когда приложение запускается, и создавайте набор специальных пользовательских логинов с ограниченным доступом (в моем случае они могут выполнять только ограниченный набор хранимых процедур и функций), у вас все будет хорошо, также убедитесь, что БД доступна только через вашу локальную сеть или VLAN.
Это реальный сценарий, он отлично работает и будет оставаться таким же до тех пор, пока не появится что-то новое, но, безусловно, промежуточный веб-сервис, ну просто отстой, либо ASP, либо что-то еще