Problem: RefreshSignInAsync in UserService.SwitchClubAsync (Zeile 719) setzte zwar den neuen Cookie, aber HttpClient.PostAsJsonAsync empfing diesen Cookie nur intern - der Browser bekam ihn nie.
Lösung: Form-POST statt HttpClient-API-Call, wie bei Login/Logout.
Änderungen:
1. ClubSwitcher.razor - Komplett überarbeitet:
- HttpClient durch natives <form method="post"> ersetzt
- AntiForgery-Token manuell gesetzt (wie LogoutButton)
- Kein JavaScript/Client-Code mehr nötig
2. AuthController.cs (Zeile 146):
- [FromBody] → [FromForm]
- [ValidateAntiForgeryToken] aktiviert
Ablauf jetzt:
1. User klickt auf Club im Dropdown
2. Form-POST an /auth/switch-club
3. Controller ruft SwitchClubAsync → DB-Update + RefreshSignInAsync
4. LocalRedirect("/dashboard") → Browser erhält neuen Cookie direkt
5. Claims sind beim Reload korrekt