在IIS 7上运行时命名管道提供程序错误40,但在cassini中工作正常

时间:2011-02-25 22:06:08

标签: c# asp.net sql-server iis cassini

我有一个通过互联网连接到远程sql server的Web应用程序。它通过别名访问,该别名配置了别名,主机名,端口和TCP / IP作为协议

在visual studio 2008中使用内置的web服务器(cassini)运行时,我可以从sql mgt studio和我的app访问db。

我现在已经安装了IIS(win7 64bit)并将其指向应用程序。当我在visual studio中运行应用程序,但配置为连接到本地iis时,我得到命名管道提供程序错误40消息。我的iis是作为本地系统运行的 - 但是在一个可以正常使用的折叠式PC上的IIS也是如此。他声称没有做任何特殊配置。

我不明白为什么。相同的代码。相同的连接字符串我已经禁用了我的防火墙,但没有用。

但它适用于我的同事 - 他似乎与我的配置相同。我很难过。有没有人有任何想法?

我的sql客户端配置现在只启用了tcp / ip。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

您是偶然使用集成安全性吗? Casinni我会在连接到SQL时使用您的用户,但是您的本地IIS 7将使用应用程序池标识,默认情况下您的SQL Server将不允许连接。您可以将应用程序池设置为以网络服务身份运行,然后查看是否可以连接。

如果您不使用集成安全性,则需要更多考虑。

总的来说,您是否尝试过使用IIS Express?正如这是IIS的全部功能,但作为当前用户运行,这将再次帮助确定它是否是用户帐户权限问题。