Update-database: "При установлении соединения с SQL Server возникла связанная с сетью или конкретная ошибка экземпляра"
У меня есть простой проект С#. Это моя строка подключения в моей web.config
для базы данных:
<connectionStrings>
<add name="DefaultConnection"
connectionString="Data Source=172.17.0.47;Initial Catalog=DevSystemListe;User ID=web_access;Password=123456"
providerName="System.Data.SqlClient" />
</connectionStrings>
Я уже убедился, что это соединение работает. Я могу подключиться к моей базе данных из Visual Studio с этим соединением, и я также могу видеть таблицы и данные.
Когда я хочу обновить мою базу данных с помощью update-database
, эта ошибка возникает:
При установлении соединения с SQL Server возникла связанная с сетью или конкретная ошибка экземпляра. Сервер не найден или не был доступен. Проверьте правильность имени экземпляра и настройте SQL Server для удаленного подключения. (поставщик: сетевые интерфейсы SQL, ошибка: 26 - ошибка определения местонахождения сервера/экземпляра)
Я удалил Entity Framework и снова установил его. Ничего не изменилось.
Ответы
Ответ 1
Наконец-то я узнал. У меня есть проект веб-сайта и мой API в моем решении. Проблема заключалась в том, что веб-сайт был установлен как проект запуска. Таким образом, структура сущности искала строку подключения на веб-сайте web.config
, а не в api web.config
. Изменение проекта запуска для моего API помогло решить эту проблему.
Если вы хотите, чтобы проект веб-сайта был запущен. Просто скопируйте строку подключения в websides web.config
.
Тем не менее спасибо за помощь всем.
Ответ 2
Вы говорите, что можете использовать эту строку подключения для просмотра данных и таблиц... можете ли вы также использовать это соединение для вставки новых записей?
Для каждого пользователя SQL Server позволяет определить, имеют ли они доступ на чтение и/или доступ к записи. Возможно, ваш пользователь просто не имеет разрешения db_datawriter
...?
![enter image description here]()
Ответ 3
Если приложение выполняется под полным IIS, то для IIS требуется некоторая конфигурация, чтобы гарантировать возможность использования экземпляра localDB в приложении. См. Https://blogs.msdn.microsoft.com/sqlexpress/2011/12/08/using-localdb-with-full-iis-part-1-user-profile/