Я создал простое ASP. NET Core MVC приложение с использованием EF Core и SQL Server. На машине разработки Windows он использует localdb. Я пытаюсь развернуть в Azure Службу приложений (Linux). Я создал базу данных Azure SQL. Развертывая из Visual Studio 2019, я установил базу данных в качестве зависимости. В настройках профиля publi sh я выбрал строку подключения Azure SQL для используемого контекста базы данных. Я также проверил EF Migrations и после развертывания скрипт успешно создал таблицы для приложения. Я могу подключиться к Azure SQL и посмотреть таблицы. Однако, когда я запускаю развернутое приложение и пытаюсь выполнить операцию с базой данных, я получаю: PlatformNotSupportedException: LocalDB не поддерживается на этой платформе
Я могу видеть из документов различные способы установки строки соединения, но я хотел бы знать, что мастер publi sh в Visual Studio 2019 пытается это сделать, и почему он не работает? Мне также непонятно, где хранится пароль. В профиле publi sh пароль выглядит в строке подключения в виде обычного текста, но не очень. Я хотел бы знать, как получить это право для производства.
Обновление На данный момент я исправил это, выполнив шаги в руководстве Linux, используя Azure CLI и запустите следующую команду:
az строка набора конфигурации веб-приложения --resource-group [myResourceGroup] --name [имя приложения] --settings MyDbConnection = '[строка-подключения]' --connection -string-type SQLServer
Я не уверен в безопасности этого подхода и планирую продолжить расследование.