找不到存储过程'dbo.aspnet_CheckSchemaVersion',当它*存在于aspnetdb中时

时间:2014-02-17 14:27:38

标签: asp.net sql-server iis

我有一个在我们公司内部网上工作的网站,我现在正尝试在托管的Web服务器上部署。不幸的是,当用户点击登录时,它会崩溃: -

'/'应用程序中的服务器错误。找不到存储过程'dbo.aspnet_CheckSchemaVersion'。

如果我继续访问远程服务器的桌面,请使用站点webconfig.cfg文件中的用户名和密码登录Management Studio,然后我可以打开aspnetdb数据库,执行dbo.aspnet_CheckSchemaVersion,不会出现任何错误消息或访问权限的问题。

我已阅读过有关此错误消息的大量其他帖子,并且没有任何建议有所帮助,但我是网站管理的新手,可能会遗漏一些明显的内容。

该网站使用VB.NET编码,并使用Visual Studio 2012进行编译。使用的第三方工具是Fusion Charts和AJAX Calendar Extender。 .NET Framework版本为4.5。

远程服务器运行带有IIS版本7的Windows Web Server 2008 R2。

数据库服务器是SQL Server Express 2008 R2的命名实例。

aspnet_Users表中定义了五个用户,我使用IIS中的.NET Users小程序添加了这些用户。我不能再使用IIS中的用户管理工具,因为我必须将站点的应用程序池升级到不支持它们的.NET 4.0。但是我可以看到用户在那里。 aspnetdb中没有定义角色。

有没有人有任何想法,我可能会失踪?

2 个答案:

答案 0 :(得分:0)

尝试使用以下内容重新创建ASP.net程序:

{{1}}

答案 1 :(得分:-1)

因此,这个问题不再“无法回答”,我将回应Aaron Bertrand的评论,提问者说这是正确答案:

您的连接字符串是否指定了数据库?如果没有,那么应用程序可能正在尝试在登录的默认数据库中执行该存储过程,而不是aspnet数据库。 - Aaron Bertrand 2月17日14:44

非常感谢,就是这样。我将连接字符串中的“初始目录”更改为aspnetdb,现在我可以登录了。 - user3319440 2月17日16:30

相关问题