Как развернуть приложение ASP.NET MVC 4 с помощью localDB для локального IIS в Windows 7?
Когда я пытаюсь запустить приложение ASP.NET MVC 4 с использованием локального IIS в Windows 7 с Visual Studio 2013. Я столкнулся с следующей ошибкой, когда приложение пытается подключиться к localDB\v11.0
Ошибка сервера в приложении "/".
Произошла ошибка, связанная с сетью или конкретным экземпляром, в то время как установление соединения с SQL Server. Сервер не был найден или недоступен. Проверьте правильность имени экземпляра и что SQL Server настроен на разрешение удаленных подключений. (поставщик: сетевые интерфейсы SQL, ошибка: 50 - время выполнения локальной базы данных произошла ошибка. Невозможно создать автоматический экземпляр. См. Windows Журнал событий приложений для получения сведений об ошибках. )
2 журнала событий
Неожиданная ошибка при попытке доступа к экземпляру LocalDB конфигурации реестра. См. Журнал событий приложения Windows для Сведения об ошибке.
и
Не удается получить локальный путь данных приложения. Скорее всего, профиль пользователя не загружается. Если LocalDB выполняется под IIS, убедитесь, что загрузка профиля включена для текущего пользователя.
Большинство решений, которые я нашел в Интернете, ссылаются на это сообщение: http://blogs.msdn.com/b/sqlexpress/archive/2011/12/09/using-localdb-with-full-iis-part-1-user-profile.aspx
Единственное различие, которое я вижу между описанной ситуацией и моей ситуацией, заключается в том, что описанный код ошибки равен 0, тогда как мой код ошибки равен 50. Однако предлагаемое решение не работает для меня.
Я не могу пройти эту ошибку, даже если я установил для параметра setProfileEnvironment значение true, и я потратил много времени на игры с различными параметрами processModel и пулами приложений.
Ответы
Ответ 1
У меня также была такая же проблема, но для нее есть решение.
Перейдите на сервер IIS, а затем в пул приложений, из которого выполняется ваше приложение. В расширенных настройках пула приложений есть опция "Модель процесса", в которой есть опция "Идентификация". По умолчанию это идентификатор пула приложений. Измените его на локальную систему, и все готово.
И помните, чтобы класть папку App_Data в папку WWW сервера IIS
Ответ 2
Попробуйте это, это решит вашу проблему:
Отредактируйте файл applicationHost.config в% windir%\system32\inetsrv\config\в частности раздел ApplicationPools.
Измените IdentityType на NetworkService для использования недавно созданной базы данных.
<add name="ASP.NET v4.0" managedRuntimeVersion="v4.0">
<processModel identityType="NetworkService" loadUserProfile="true" setProfileEnvironment="true" />
</add>
Ответ 3
Убедитесь, что пул приложений использует идентификатор, который имеет доступ к нужному экземпляру LocalDB.
Затем отключите ASP.NET олицетворение в настройках аутентификации приложения. В противном случае приложение использует учетную запись IUSR_MachineName
для доступа к базе данных.
Эта настройка может оказаться непригодной для производственной среды, но может быть достаточной для разработки баз данных и приложений.
Ответ 4
Может быть, это поможет кому-то. У меня была такая же проблема с установкой пустой версии Epise3rver 7.5+, но было ясно, что она не связана ни с настройками, ни с настройками, так как у моих коллег не было этой проблемы. Я закончил удаление всех приложений, связанных с MSSQL, и переустановил MsSQL Express 2014. И это сработало! Я пытался до установки 2014 года, но ничего не изменил, так как сказал, что я удалил все связанные с MsSQL перед установкой 2014 снова. Надеюсь, что это поможет.
Ответ 5
Использование MVC 5.2.3.0 У меня была аналогичная проблема... добавлено это в мой web.config.
<!-- Configure the Sql Membership Provider -->
<membership defaultProvider="SqlMembershipProvider" userIsOnlineTimeWindow="15">
<providers>
<clear />
<add
name="SqlMembershipProvider"
type="System.Web.Security.SqlMembershipProvider"
connectionStringName="SqlConn"
applicationName="MembershipAndRoleProviderSample"
enablePasswordRetrieval="false"
enablePasswordReset="false"
requiresQuestionAndAnswer="false"
requiresUniqueEmail="true"
passwordFormat="Hashed" />
</providers>
</membership>
https://docs.microsoft.com/en-us/dotnet/framework/wcf/feature-details/how-to-use-the-aspnet-membership-provider