Я пытался развернуть исходное веб-приложение ASP .NET с использованием шаблона MVC с аутентификацией через локальный файл базы данных SQL. Пока я могу заставить его работать на моем компьютере. Когда я публикую его в папке на удаленном сервере, я не могу понять, как настроить IIS 10 для чтения из этого локального файла базы данных SQL, сохраненного в его подкаталоге App_Data. В результате я получаю следующую ошибку:
Ошибка сетевых интерфейсов SQL 52 - Невозможно найти установку среды выполнения локальной базы данных. Убедитесь, что SQL Server Express установлен правильно и что функция локальной базы данных включена.
Я пытаюсь решить проблему, установив SQL Server 2012 Express на удаленный сервер, но проблема все еще существует. Итак, я полагаю, что проблема может исходить из строки подключения:
Источник данных = (LocalDb) \ MSSQLLocalDB; AttachDbFilename = | DataDirectory | \ aspnet-WebApplication1-20180923034052.mdf; исходный каталог = aspnet-WebApplication1-20180923034052; интегрированная безопасность = True "providerName =" System.Data.SqlClient
Это то, что у меня есть на моем компьютере. Поскольку я настраиваю SQL-сервер по умолчанию на удаленном сервере, я полагаю, что мне нужно сопоставить имя движка базы данных SQL-сервера, которым по умолчанию является MSSQLSERVER, как показано ниже. Это тоже не сработало.
Источник данных =. \ MSSQLSERVER; AttachDbFilename = | DataDirectory | \ aspnet-WebApplication1-20180923034052.mdf; Исходный каталог = aspnet-WebApplication1-20180923034052; Интегрированная безопасность = True "providerName =" System.Data.SqlClient
Какая конфигурация мне не хватает, чтобы заставить работать это простое веб-приложение ASP .NET?
Что я сделал, так это добавил appool в качестве пользователя в SQL Server. А именно, на уровне SQL Server перейдите к безопасности. Добавить новый логин. Добавьте IIS APPPOOL \ APPPOOLNAME в качестве пользователя. Не проверяйте пользователя или что-нибудь еще. Примите значения по умолчанию и добавьте пользователя appool в SQL Server. Дайте этому пользователю права чтения / записи в базе данных и все. Ссылка в блоге MSDN
Чтобы строка подключения по умолчанию, созданная вместе с проектом, работала, вам необходимо установить SQL Server LocalDB на удаленном сервере. Это отдельная установка от основной. Здесь ссылка на сайт куда вы можете скачать Microsoft SQL Server 2012 LocalDB.
После этого настройте каталог, в котором публикуется проект, чтобы использовать Локальная система в качестве пула приложений через Диспетчер IIS. Для этого как указано Вот:
Учтите, что хранить пул приложений работает как Локальная система как объяснено Вот, но этого достаточно для тестирования.