Динамическое добавление конечных точек служб данных WCF - PullRequest
1 голос
/ 18 января 2011

Я исследовал oData и WCF DataServices, и я думаю, что он отлично подойдет для моего проекта.

Однако каждый из наших клиентов имеет свою собственную базу данных.

Итак, есть ли способ динамически создать конечную точку WCF, которую я мог бы указать на базу данных. Схема для всех баз данных идентична.

Например: Клиенту1 нужен DB1, он будет использовать URL: https://webservice.com/wcf/Client1, который будет использовать DB1

Client2 нужна DB2, они будут использовать URL: https://webservice.com/wcf/Client2, который будет использовать DB2

Клиенту 3 нужен DB3, он будет использовать URL: https://webservice.com/wcf/Client3, который будет использовать DB3

Или мне нужно было бы указать, к какой базе данных подключаться, но я не знаю, как бы это сделать с помощью WCF Data Services. Хотя в прошлом я делал это с обычными службами WCF

Они должны быть динамичными, потому что мы постоянно добавляем новых клиентов и у нас есть автоматизированный процесс создания баз данных.

Я знаю, что мог бы создать веб-сервис для каждой базы данных, но было бы намного проще поддерживать 1 веб-сервис.

1 Ответ

0 голосов
/ 19 января 2011

Я нашел ответ.

Вместо создания нескольких конечных точек, я могу просто передать строку подключения из веб-службы в качестве заголовка.

Вот пример кода.Это действительно легко реализовать и прекрасно работает.

http://social.msdn.microsoft.com/Forums/en-NZ/adodotnetdataservices/thread/2eb0e7a8-10c5-4c6c-80b8-23cb39161345

...