2016-07-28 21 views
1

In meinem ASP.NET-Projekt versuche ich, die aktuellen Rollen eines Benutzers anhand seiner ID abzurufen. Hier ist mein Code für den Controller:ASP.NET MVC 5- Abrufen von Rollen für den spezifischen Benutzer

public ActionResult ChangeRole(string id) 
    { 
     var user = _context.Users.Single(u => u.Id == id); 
     var roles = new RoleManagerViewModel() 
     { 
      RoleNames = Roles.GetRolesForUser(user.Id) 
     }; 
     return View(roles); 
    } 

Wenn ich versuche, es zu laufen bekomme ich diesen Fehler jedoch:

The Role Manager feature has not been enabled.

ich gelesen, dass ich das beheben kann, dass durch roleManager enabled="true" hinzufügen.

Nachdem ich fügte hinzu, dass zu meiner web.config Datei, obwohl ich diesen Fehler:

A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: SQL Network Interfaces, error: 26 - Error Locating Server/Instance Specified)

Antwort

1

Dieser Fehler tritt in der Regel, wenn die richtige Authentifizierung durch die web.config auf den SQL Server nicht angegeben wird, zugegriffen wird, ein Tippfehler, oder ein SQL Server ist nicht in der Verbindungszeichenfolge zu diesem bestimmten Server definiert. Wenn auf die Rollenmanager-Datenbank zugegriffen wird, können Informationen dazu unter dem folgenden Link hilfreich sein.

Per Beispiel

<add name="SqlConnection" connectionString="Data Source=MSSQLSERVER; Initial Catalog=DatabaseName; Integrated Security=True;"> 
</add> 

Weitere Informationen hier: https://msdn.microsoft.com/en-us/library/ff647401.aspx?f=255&MSPPError=-2147217396

Wenn die Windows-Authentifizierung dann benutzt wird, wenn die integrierte Sicherheit auf true gesetzt ist es Windows Active Directory-Anmeldeinformationen verwendet werden Anmeldeinformationen für die Datenbank verbinden Server. Überprüfen Sie, ob die Übereinstimmung der Anmeldeinformationen mit dem Datenbankserver erforderlich ist.

+0

Es ist nur Zugriff auf eine lokale Datenbank auf meinem Computer, so denke ich, ich bin verwirrt, warum es ist, wenn ich versuche, die Rollen zu erhalten, die ich einen Fehler bekomme. – ecain

+0

Haben Sie versucht, db local für die Datenquelle zu verwenden? – JDavila