Трудно сказать точно, тем более что вы не опубликовали фактическую ошибку, которую получаете.Однако я думаю, что вы не настраиваете строку подключения для своей среды развертывания.
То, как вы это делаете, в настоящее время зависит от LocalDb, который работает / существует только в IDE Visual Studio.При развертывании в IIS вам понадобится реальный экземпляр базы данных и реальные учетные данные базы данных.
Настройка сервера базы данных выходит далеко за рамки того, что здесь может быть разумно рассмотрено, поэтому, если вам нужна помощь там, вам нужно будет сделать некоторые исследования самостоятельно.Когда у вас есть фактический экземпляр и база данных, пришло время настроить строку подключения для среды развертывания.
Теперь есть несколько способов, которыми вы можете перейти сюда.В общем, вы хотите предоставить часть конфигурации, которая переопределит то, что установлено в вашей среде разработки / по умолчанию.Это может быть JSON-файл для конкретной среды, такой как appsettings.Production.json
, переменная среды (которую вы устанавливаете вручную на целевом сервере или через конвейер CI / CD) или даже внешний источник, такой как хранилище ключей Azure.Я скажу, что, поскольку строки подключения обычно содержат информацию, которая должна храниться в секрете (пароли), вам следует избегать JSON и других параметров конфигурации на основе файлов, поскольку они не зашифрованы и обычно передаются в систему контроля версий.Переменные среды, хранилище ключей Azure и т. Д. Здесь должны быть вашими решениями.
В любом случае, конфигурация работает буквально на основе переопределения, поэтому вам просто нужно имитировать структуру, присутствующую в вашем appsettings.json
.Для источников конфигурации, которые не допускают иерархических структур, таких как JSON, вы можете использовать двоеточия (:
) для разделения элементов в дереве: ConnectionStrings:MembersDatabase
в качестве ключа конфигурации.Например, в качестве переменной среды это будет имя переменной.