我遇到数据库连接问题。据我所知,如果我们使用Create UserWizard控件创建新用户,并且在运行它之后如果我们从解决方案资源管理器刷新刷新按钮,aspnetdb.mdf将在app目录下自动生成。但在我的情况下它没有发生。我的意思是aspnetdb.mdf没有产生。提交注册提交按钮后,收到此错误消息“无法找到存储过程'dbo.aspnet_CheckSchemaVersion'。”
这是我在web.configfile中的连接字符串。
<connectionStrings>
<add name="BankingTransaction" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Bank.mdf;integrated security=True;User Instance=True" providerName="System.Data.SqlClient"/>
</connectionStrings>
请有人帮助我,我的错误在哪里。
谢谢, Masum
答案 0 :(得分:1)
数据库需要在其上运行regsql.exe来添加成员.net内容使用的所有文件。
这解释了如何做到这一点
http://msdn.microsoft.com/en-us/library/ms229862(VS.80).aspx
这将安装ASPNET角色和membeship所需的所有表和过程
答案 1 :(得分:0)
听起来您正在调用的存储过程(dbo.aspnet_CheckSchemaVersion
)在数据库中不存在。
以下是一些似乎遇到过同样问题的人:
http://forums.asp.net/t/940632.aspx
http://forums.asp.net/p/1042979/1456396.aspx#1456396 http://social.msdn.microsoft.com/Forums/en-US/adodotnetdataproviders/thread/7a85cf72-7f53-421f-be74-b12262c47f37/
尝试其中一些解决方案可能值得。这听起来很有希望:
在SQL SERVER实例上运行以下命令:
Exec sp_addrolemember 'aspnet_Membership_FullAccess', 'YourUser'
go
Exec sp_addrolemember 'aspnet_Personalization_FullAccess', 'YourUser'
go
Exec sp_addrolemember 'aspnet_Profile_FullAccess', 'YourUser'
go
Exec sp_addrolemember 'aspnet_Roles_FullAccess', 'YourUser'
go
Exec sp_addrolemember 'aspnet_WebEvent_FullAccess', 'YourUser'
go