C# 找不到存储过程';dbo.aspnet_UsersInRoles_getroles for user';
将SQL Server数据库备份到另一台服务器后,会发生奇怪的错误。应用程序也已迁移。它是一个ASP.NET MVC4应用程序 我得到以下错误:C# 找不到存储过程';dbo.aspnet_UsersInRoles_getroles for user';,c#,asp.net,asp.net-mvc,C#,Asp.net,Asp.net Mvc,将SQL Server数据库备份到另一台服务器后,会发生奇怪的错误。应用程序也已迁移。它是一个ASP.NET MVC4应用程序 我得到以下错误: Could not find stored procedure 'dbo.aspnet_UsersInRoles_GetRolesForUser'. Line 1: @{ Line 2: bool visible = false; Line 3: if (User.IsInRole("Administrador")) Line
Could not find stored procedure 'dbo.aspnet_UsersInRoles_GetRolesForUser'.
Line 1: @{
Line 2: bool visible = false;
Line 3: if (User.IsInRole("Administrador"))
Line 4: {
Line 5: visible = true;
存储过程在那里,数据库是相同的,服务器具有相同的名称,因此我认为不应该更改连接字符串
如何跟踪错误以查找发生的情况?检查ASP.NET成员使用的连接字符串。这是成员资格提供程序部分中的connectionStringName属性。然后参考ConnectionString部分,查看与该名称对应的实际连接字符串 例如
您确定模式相同吗?您可能已经在与dbo
不同的模式下创建了表和存储过程(我认为默认设置将在名为当前用户名的模式下创建它们)是的。。。它们来自dbo架构。您是否也迁移了数据库用户帐户?数据库还原将在数据库中创建用户,但不会在服务器上创建用户。您知道用户帐户是否为孤立帐户吗?
<membership defaultProvider="AspNetSqlMembershipProvider">
<providers>
<clear/>
<add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
connectionStringName="THE_CONNECTION_STRING_NAME" applicationName="/"/>
</providers>
</membership>