Звучит как довольно небезопасное решение. Что, если клиент поместит другой код клиента в URL? Где проверяется, если клиент может получить доступ к этому коду, если у вас нет центральной базы данных с разрешениями клиента?
Вам нужна аутентификация и некоторое центральное хранилище (дополнительная база данных), где вы будете проверять, имеет ли пользователь, обращающийся к приложению, права доступа к предоставленному URL. Он также проверит, существует ли такая база данных. Далее вам нужно просто SqlConnectionStringBuilder
и использовать код клиента в качестве имени базы данных (или части имени). По соображениям безопасности каждая база данных должна иметь отдельную учетную запись SQL с разрешениями на чтение только из этой базы данных. Эта учетная запись БД также может храниться в этом центральном хранилище с зашифрованными паролями.
Могут возникнуть дополнительные сложности, если вы также ожидаете динамического добавления или удаления кодов клиентов = баз данных. Для этого потребуется учетная запись с высокими привилегиями для управления учетными записями, учетными записями, базами данных и т. Д.
Поскольку вы спрашиваете, как получить часть Uri, похоже, у вас почти нет опыта работы с ASP.NET MVC и, возможно, со всем, что связано. Вы должны обязательно попросить любого более опытного коллегу или начальника пересмотреть вашу архитектуру, потому что на данный момент у вас, похоже, возникнут серьезные проблемы, и вы можете разработать очень небезопасное приложение, которое может нанести существенный вред репутации вашей компании и вашего клиента.