Blazor mit Editform funktioniert nicht mit KomponentenC#

Ein Treffpunkt für C#-Programmierer
Anonymous
 Blazor mit Editform funktioniert nicht mit Komponenten

Post by Anonymous »

Ich habe ein .NET 9 Blazor -Projekt, das einen Server und einen Client enthält. Im Kundenprojekt habe ich viele Formen. Diese Formen haben viele sich wiederholende Abschnitte und einige wiederholte Fragen. Zum Beispiel gibt es eine Dropdown -Liste für Kanäle (wie Sie es über mich hören, und die Optionen sind Bing, Google, Freunde usw.).
Ich möchte Um diese Felder besser zu organisieren, um redundante Code zu vermeiden. Zur Vereinfachung habe ich eine Haupt -Rasier -Seite: < /p>

Code: Select all




@code {
Domain.Client? Client;
Domain.ClientSession? Session;

protected override async Task OnInitializedAsync()
{
_context = new EditContext(Session);
}

public void Save() {
// Client and Session save
}
}
Die Modelle Client und Sitzung sind wie folgt:

Code: Select all

public class Client
{
public string? PhobiasNote { get; set; }
}

public class ClientSession
{
public SessionInitial? SessionInitial { get; set; }
}

public class SessionInitial
{
public bool HasPhobias { get; set; }
public IList
? Phobias { get; set; }
}
Dann ist die Initialform eine ziemliche Liste von Eingängen. Dieser Code funktioniert. < /P>

Code: Select all




@rl.Name


@rl.Name








@code {
[Parameter, EditorRequired] public SessionInitial? Session { get; set; }
[Parameter, EditorRequired] public Client? Client { get; set; }
}
Die Logik des letzten Rasiermessers besteht darin, Informationen vom Benutzer zu sammeln und sie im Session oder client zu speichern. Wenn es eine Änderung gibt, sehe ich die Änderung im Hauptobjekt. mit den neuen Werten. Ich hoffe, es ist bisher klar. Speichern Sie die Daten. Die Komponente heißt also PhobiaSelection und sieht so aus

Code: Select all


@rl.Name


@rl.Name



@code {
[Parameter, EditorRequired] public IList
? Phobias { get; set; } = default!;
}
Mit dieser Komponente ist die Initialform jetzt lesbar und einfacher

Code: Select all









@code {
[Parameter, EditorRequired] public SessionInitial? Session { get; set; }
[Parameter, EditorRequired] public Client? Client { get; set; }
}
Das Problem ist, dass in diesem Fall, wenn der Benutzer etwas auswählt, keine Änderungen in der variablen Sitzung gibt. Ich kann sehen, dass in der PhobiaSelection die Wertänderungen, dies jedoch nicht ändert. Die Sitzung ? EventCallback oder eventCallback überall erhalte ich immer noch diesen Fehler. Beschreibung hier "src =" https://i.static.net/2fqaukem.png "/>
Und genau das ist was Ich sehe auf ValueSchanged

Und dies ist ein weiterer Versuch < /p>

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post