在IIS DB连接问题上托管ASP.NET Web App

时间:2015-04-07 03:04:50

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

之前我使用过IIS,但我从未使用过数据库,而且我从未使用过Web应用程序。我做了相同的步骤,将一个站点放到IIS上,当我转到一个有数据库连接的页面时,一切都有效。我已经尝试了很多,这就是我得到的。

  

建立与SQL Server的>连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确,以及SQL Server是否配置为允许远程连接。 (提供程序:SQL网络接口,错误:50 - 发生本地数据库运行时错误。无法创建自动实例。请参阅Windows应用程序事件日志以获取错误详细信息。

Windows应用程序事件日志:

  

无法获取本地应用程序数据路径。很可能没有加载用户配置文件。如果在IIS下执行LocalDB,请确保为当前用户启用了配置文件加载。

这是在Visual Studio中构建的,我有一个SQL Express DB。 我发布了我的连接字符串,非常感谢任何帮助。

我已将此添加到我的applicationHost.config:

<add name="DefaultAppPool">
    <processModel identityType="ApplicationPoolIdentity" loadUserProfile="true" setProfileEnvironment="true" />

现在我明白了:

  

尝试为文件| MY DB1 FILE |附加自动命名的数据库失败。存在具有相同名称的数据库,或者无法打开指定的文件,或者它位于UNC共享上。

<add name="DefaultConnection" connectionString="Data Source=(LocalDb)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\DB1.mdf;Initial Catalog=aspnet-ICCAA_VIZIER-20150223043129;Integrated Security=True" providerName="System.Data.SqlClient"/>
<add name="ConnectionString" connectionString="Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\DB2.mdf;Integrated Security=True;Connect Timeout=30" providerName="System.Data.SqlClient"/>

1 个答案:

答案 0 :(得分:0)

我能够弄清楚。我将所有数据连接更改为。\ SqlExpress 。这导致了另一个错误:

  

用户'NT AUTHORITYNETWORK SERVICE'

登录失败

为了解决这个问题,我按照这篇文章来解决这个问题。

Login Failed For user NetworkService