У меня проблемы с подключением к SQL Server 2008 R2 Express с базой данных Northwind с использованием ApplicationPoolIdentity в IIS 7.5, что приводит к следующему сообщению об ошибке:
Failed to generate a user instance of SQL Server due to failure in retrieving the user's local application data path. The connection will be closed.
Примечания:
- Я использую Windows 7 / VS 2010 / IIS 7.5 / SQL Server 2008 R2 Express (все на одном компьютере).
- мой сайт использует пул приложений "ASP.NET v4.0";
- Пул приложений ASP.NET v4.0 использует ApplicationPoolIdentity в качестве удостоверения;
- SQL Server 2008 R2 Express имеет имя входа «IIS APPPOOL \ ASP.NETv4.0» с предоставленной ролью сервера sysadmin;
- В базе данных Northwind пользователь «IIS APPPOOL \ ASP.NET v4.0» настроен со следующими разрешениями: db_accessadmin, db_backupoperator, db_datareader, db_datawriter, db_ddladmin, db_securityadmin;
- процесс w3wp.exe выполняется с пользователем «IIS APPPOOL \ ASP.NETv4.0»
- Я вижу, что создана папка профиля пользователя (C: \ Users \ ASP.NET v4.0);
- та же проблема возникает при использовании пула приложений "DefaultAppPool".
Если я изменю пользователя ApplicationPoolIdentity на другого пользователя, у которого есть права доступа к базе данных, он будет работать.
Дополнительная информация:
строка подключения:
<connectionStrings>
<add name="NorthwindEntities" connectionString="metadata=res://*/NorthwindModel.csdl|res://*/NorthwindModel.ssdl|res://*/NorthwindModel.msl;provider=System.Data.SqlClient;provider connection string="Data Source=NOTEBOOK\SQLEXPRESS;Initial Catalog=Northwind;Integrated Security=True;MultipleActiveResultSets=True"" providerName="System.Data.EntityClient" />
</connectionStrings>
Может ли кто-нибудь помочь мне решить эту проблему?
Спасибо за совет.