错误:无法找到存储过程' dbo.aspnet_CheckSchemaVersion'

时间:2014-10-28 09:52:12

标签: sql-server asp.net-mvc

我尝试从数据库中获取所有用户,但我收到此错误:

"Could not find stored procedure 'dbo.aspnet_CheckSchemaVersion'"

代码如下:

    public ActionResult Index()
    {
        var users = Membership.GetAllUsers();
        return View(users);
    }

来自webconfig的代码是下一个:

<membership defaultProvider="SqlMembershipProvider">
      <providers>
        <clear/>
        <add name="SqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider" connectionStringName="DefaultConnection" applicationName="/"/>
      </providers>
    </membership>

为什么这不起作用以及为什么我一直收到错误?

3 个答案:

答案 0 :(得分:0)

可能有多种原因:

  • 默认情况下,您登录到其他数据库,然后执行该过程
  • 您的数据库中根本不存在过程(可能会被删除?)
  • 您正在内部某处更改数据库。

尝试使用您以编程方式传递的登录名和密码手动登录MSSMS并执行sp_helptext aspnet_CheckSchemaVersion并查看是否获得过程代码?

答案 1 :(得分:0)

您需要对SQL Server运行aspnet_regsql.exe以确保创建表和对象:

  aspnet_regsql.exe -S DBServerName -U DBLogin -P DBPassword -A all -d DBName

答案 2 :(得分:-1)

应该有另一个以“用户”为参数的行动结果。