Dej*_*n.S 30 asp.net iis-7 connection-string web-config sql-server-2008
我对此持续了2天的努力,而没有更接近解决方案.我已阅读20-30个线程的alteast和stil无法解决此问题.
请帮帮我.
我已禁用匿名身份验证,启用asp.net模拟.
我已经添加了 <identity impersonate = "true" />
我已将用户添加到连接到我尝试连接的数据库的安全登录
这是我使用的连接字符串:
Data Source=IPTOSERVER;Initial Catalog=Phaeton;User Id=User;Password=Password;
Run Code Online (Sandbox Code Playgroud)
错误信息:
无法打开登录请求的数据库"Phaeton.mdf".登录失败.
用户'NT AUTHORITY\NETWORK SERVICE'登录失败.
Jed*_*Jed 83
我遇到了类似的错误消息,我在Windows事件查看器中注意到:
用户'NT AUTHORITY\NETWORK SERVICE'登录失败.原因:无法打开显式指定的数据库.[客户:本地机器]
解决我的问题的解决方案是:
这是上面的截图:

您收到的错误消息告诉您应用程序无法连接到sqlexpress数据库,而不是sql server.我将在sql server中更改db的名称,然后相应地更新connectionstring并再次尝试.
您的错误消息指出以下内容:
Cannot open database "Phaeton.mdf" requested by the login. The login failed.
Run Code Online (Sandbox Code Playgroud)
在我看来,您仍在尝试连接到基于文件的数据库,名称"Phaeton.mdf"与您的新SQL数据库名称"Phaeton"不匹配.
希望这可以帮助.
小智 8
如果错误消息只是
"用户'NT AUTHORITY\NETWORK SERVICE'登录失败.",然后授予"NT AUTHORITY\NETWORK SERVICE"的登录权限
通过使用
"sp_grantlogin 'NT AUTHORITY\NETWORK SERVICE'"
Run Code Online (Sandbox Code Playgroud)
否则,如果错误消息是这样的
"无法打开登录请求的数据库"Phaeton.mdf".登录失败.用户'NT AUTHORITY\NETWORK SERVICE'登录失败."
尝试使用
"EXEC sp_grantdbaccess 'NT AUTHORITY\NETWORK SERVICE'"
Run Code Online (Sandbox Code Playgroud)
在你的"Phaeton"数据库下.
我喜欢Jed的解决方案,但问题是我每次在调试模式下构建项目时,它都会部署我的数据库项目并再次删除用户.所以我将这个MySQL脚本添加到Post-Deployment脚本中.它实际上是Jed所说的,但每次部署时都会创建用户.
CREATE USER [NT AUTHORITY\NETWORK SERVICE]
FOR LOGIN [NT AUTHORITY\NETWORK SERVICE]
WITH DEFAULT_SCHEMA = dbo;
Go
EXEC sp_addrolemember 'db_owner', 'NT AUTHORITY\NETWORK SERVICE'
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
119245 次 |
| 最近记录: |