【发布时间】:2012-03-04 02:33:03
【问题描述】:
我有一个 asp.net 应用程序,我使用的是 vs 2010,我使用 Windows 身份验证连接到 sql server express 2008 r2。我可以连接到我的数据库并通过我的应用程序处理我的数据。
我正在尝试在我的网站上使用角色来实现会员身份
当我运行 aspnet.regsql.exe 实用程序时,我收到以下错误消息: 安装失败。
例外: 无法连接到 SQL Server 数据库。
失败详情
System.Web.HttpException (0x80004005):无法连接到 SQL Server 数据库。 ---> System.Data.SqlClient.SqlException (0x80131904):建立与 SQL Server 的连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确以及 SQL Server 是否配置为允许远程连接。 (提供者:命名管道提供者,错误:40 - 无法打开与 SQL Server 的连接) 在 System.Data.SqlClient.SqlInternalConnection.OnError(SqlException 异常,布尔 breakConnection) 在 System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning() 在 System.Data.SqlClient.TdsParser.Connect(ServerInfo serverInfo,SqlInternalConnectionTds connHandler,布尔 ignoreSniOpenTimeout,Int64 timerExpire,布尔加密,布尔 trustServerCert,布尔集成安全) 在 System.Data.SqlClient.SqlInternalConnectionTds.AttemptOneLogin(ServerInfo serverInfo,字符串 newPassword,布尔型 ignoreSniOpenTimeout,TimeoutTimer 超时,SqlConnection owningObject) 在 System.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover(ServerInfo serverInfo,字符串 newPassword,布尔重定向用户实例,SqlConnection owningObject,SqlConnectionString connectionOptions,TimeoutTimer 超时) 在 System.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(SqlConnection owningObject,TimeoutTimer 超时,SqlConnectionString connectionOptions,字符串 newPassword,布尔重定向用户实例) 在 System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity 标识,SqlConnectionString 连接选项,对象 providerInfo,字符串 newPassword,SqlConnection owningObject,布尔重定向用户实例) 在 System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions 选项,对象 poolGroupProviderInfo,DbConnectionPool 池,DbConnection owningConnection) 在 System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnection owningConnection,DbConnectionPool 池,DbConnectionOptions 选项) 在 System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject) 在 System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject) 在 System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject) 在 System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection) 在 System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection,DbConnectionFactory connectionFactory) 在 System.Data.SqlClient.SqlConnection.Open() 在 System.Web.Management.SqlServices.GetSqlConnection(字符串服务器,字符串用户,字符串密码,布尔值信任,字符串 connectionString) 在 System.Web.Management.SqlServices.GetSqlConnection(字符串服务器,字符串用户,字符串密码,布尔值信任,字符串 connectionString) 在 System.Web.Management.SqlServices.SetupApplicationServices(字符串服务器,字符串用户,字符串密码,布尔信任,字符串连接字符串,字符串数据库,字符串 dbFileName,SqlFeatures 功能,布尔安装) 在 System.Web.Management.ConfirmPanel.Execute()
另外,我无法使用 ASP.NET 网站管理工具。当我单击安全选项卡时,我收到以下错误:
您选择的数据存储存在问题。这可能是由无效的服务器名称或凭据或权限不足引起的。这也可能是由于未启用角色管理器功能造成的。单击下面的按钮可重定向到您可以选择新数据存储的页面。
以下消息可能有助于诊断问题:找不到存储过程“dbo.aspnet_CheckSchemaVersion”。
所以,我按照说明单击“选择数据存储”按钮,这允许我选择一个提供程序。该提供程序名为“AspNetSqlProvider”,旁边有一个测试链接。我单击测试并收到以下消息: 已成功建立与数据库的连接。
成功建立到数据库的连接。这可行,但问题仍然存在,并且当我重复我已经讨论过的步骤时会出现以前的错误。
有谁知道这是什么原因造成的,以及如何解决这个问题?
【问题讨论】:
标签: asp.net visual-studio-2010 sql-server-2008