Warum ruft mein Blazor EditForm nicht OnValidSubmit auf der Route /auth/register auf?C#

Ein Treffpunkt für C#-Programmierer
Anonymous
 Warum ruft mein Blazor EditForm nicht OnValidSubmit auf der Route /auth/register auf?

Post by Anonymous »

Ich erstelle eine Blazor-App (Razor Components / .NET 8) und habe eine Registrierungsseite unter /auth/register. Die Komponente verwendet ein EditForm mit OnValidSubmit="HandleRegister". Innerhalb von HandleRegister habe ich eine Console.WriteLine("HandleRegister CALLED"), und ich rufe auch eine API über einen injizierten IAuthService auf.
Das Problem: Wenn ich das Formular absende, wird der Handler nie aufgerufen. Es gibt keine Meldung in der Serverkonsole, keinen API-Aufruf und auf der Registerkarte „Netzwerk“ des Browsers wird nur ein POST /auth/register mit application/x-www-form-urlencoded angezeigt, wie ein klassisches HTML-Formular. Das Formular-HTML in DevTools sieht folgendermaßen aus:

Code: Select all

xml
... [/code]
Es scheint also, dass die Seite als normales HTML-Formular gerendert wird, nicht als Blazor EditForm mit Interaktivität.
Einige weitere Details:
  • Ich habe eine Router-Komponente wie diese:

Code: Select all

text

Leider gibt es nichts an dieser Adresse.

Code: Select all

csharp
Builder

Code: Select all

.Services.AddRazorComponents()        .AddInteractiveServerComponents();  app.MapRazorComponents()    .AddInteractiveServerRenderMode(); 
  • Code: Select all

    Register.razor
    ist die einzige Komponente mit @page „/auth/register“ und enthält das EditForm mit einem Submit .
  • Code: Select all

    MainLayout.razor
    hat keine @page-Direktive.
  • Ich sehe in der Browserkonsole einige Warnungen zur Inhaltssicherheitsrichtlinie und zu einer Browsererweiterung (

    Code: Select all

    Unchecked runtime.lastError: A listener indicated an asynchronous response...
    ), aber sie scheinen nichts miteinander zu tun zu haben.
Meine Fragen:
  • Unter welchen Bedingungen würde Blazor meine Register.razor-Seite als einfaches HTML-Formular rendern () anstelle eines richtigen interaktiven EditForm, damit OnValidSubmit nie ausgelöst wird?
  • Was sollte ich überprüfen, um sicherzustellen, dass die Route /auth/register tatsächlich von der Blazor-Komponente und nicht von einer MVC/Razor-Seite oder einem alten Artefakt bedient wird?
  • Gibt es CSP- oder andere Konfigurationsprobleme, die dies verhindern könnten? Blazor von der Verkabelung von Event-Handlern wie OnValidSubmit, obwohl die Seite scheinbar normal geladen wird?
    Jede Anleitung oder konkrete Schritte zum Debuggen dieses Problems (was in DevTools, Projektstruktur oder Routing-Setup überprüft werden sollte) wären willkommen.

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post
  • Warum ruft mein Blazor EditForm nicht OnValidSubmit auf der Route /auth/register auf?
    by Anonymous » » in C#
    0 Replies
    0 Views
    Last post by Anonymous
  • Blazor mit Editform funktioniert nicht mit Komponenten
    by Anonymous » » in C#
    0 Replies
    28 Views
    Last post by Anonymous
  • Warum wird die Editform nicht ausgelöst?
    by Anonymous » » in C#
    0 Replies
    29 Views
    Last post by Anonymous
  • Route nicht gefunden – Ausnahme Route [login] nicht definiert
    by Anonymous » » in Php
    0 Replies
    71 Views
    Last post by Anonymous
  • Laravel GET Route ruft falsche Klassenfunktion auf
    by Guest » » in Php
    0 Replies
    41 Views
    Last post by Guest