У меня есть веб-проект (C # Asp.Net, EF 4, MS SQL 2008 и IIS 7), и мне нужно перенести его на IIS 7 локально (на данный момент отлично работает с CASSINI).
Локально в IIS у меня есть Default Web Site
мой развернуть. Как мое развертывание, так и Default Web Site
пул ASP.NET v4.0 (см. Изображение для настройки) целевой пул Framework 4 в качестве моего веб-проекта.
При посещении сайта браузер не показывает страницу и позволяет браузеру загружать страницу.
У меня есть другие проекты, работающие на IIS локально, и они работают без проблем (но они не используют Entity Framework).
Используя Event Logger, я вижу ошибки, как показано ниже:
Exception information:
Exception type: EntityException
Exception message: The underlying provider failed on Open.
at System.Data.EntityClient.EntityConnection.OpenStoreConnectionIf(Boolean openCondition, DbConnection storeConnectionToOpen, DbConnection originalConnection, String exceptionCode, String attemptedOperation, Boolean& closeStoreConnectionOnFailure)
Login failed for user 'IIS APPPOOL\ASP.NET v4.0'.
at System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject)
at System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection)
at System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory)
at System.Data.SqlClient.SqlConnection.Open()
at System.Data.EntityClient.EntityConnection.OpenStoreConnectionIf(Boolean openCondition, DbConnection storeConnectionToOpen, DbConnection originalConnection, String exceptionCode, String attemptedOperation, Boolean& closeStoreConnectionOnFailure)
ОБНОВЛЕНИЕ: Вы можете прочитать в ресурсах по этому вопросу, что разрешения должны быть предоставлены на MS SQL 2008 вручную, как объясняется в его ответе. При использовании IIS 7.5 и MS SQL 2008 R2 установка разрешения вручную не требуется.