Fehlermeldung:
System.FormatException: Die Eingabezeichenfolge hatte nicht das richtige Format.
Ursachenanalyse: Die Ausnahme wird während der Phase der Identitätsauflösung ausgelöst. Es scheint, dass, wenn die Benutzersitzung keine Rollen enthält, der NetCoreIdentityAuthProvider einem Fallback-Pfad folgt, um ClaimTypes.NameIdentifier zu füllen, der versucht, die UserAuthId als Ganzzahl zu analysieren. Wenn dem Benutzer mindestens eine Rolle zugewiesen ist, wird die Identität korrekt aufgelöst, was bestätigt, dass das Problem im leeren Rollenlogikpfad des Anbieters lokalisiert ist.
Minimale Reproduktion:
- Verwenden Sie ein AuthRepository mit GUIDs als UserAuthId
- Konfigurieren Sie NetCoreIdentityAuthProvider in ASP.NET Core
- Authentifizieren Sie einen Benutzer ohne Einträge in der UserAuthRole-Tabelle
- Greifen Sie auf jede Ressource zu, die die .NET Core-Authentifizierungs-Middleware auslöst
Mobile version