Ich habe drei Sätze Listboxen, ich verschiebe Elemente von lb1 zu lb2, von lb3 zu lb4 und von lb5 zu lb6. Die Listenfelder auf der linken Seite enthalten die gleichen Elemente und ich möchte nicht, dass der Benutzer die Seite senden kann, wenn ein oder mehrere Elemente aus den linken Listenfeldern zu mehr als einem Listenfeld auf der rechten Seite hinzugefügt werden. Zum Beispiel kann Element A in lb1, lb3 und lb5 nur in lb2, lb4 oder lb6 gespeichert werden, nicht in zwei oder drei von ihnen.Wie überprüft man, ob ein Element in mehr als einer Listbox existiert? ASP.NET/C#
Ich möchte diese Prüfung vor dem Einreichen der Seite durchführen (und später werde ich Validierung mit Javascript hinzufügen) und ich frage mich, was ist der effizienteste Weg, dies zu tun.
Fügen Sie alle Elemente zu einer Liste hinzu und prüfen Sie, ob Dubletten vorhanden sind.
Vielen Dank im Voraus.
Edit: etwas wie folgt aus:
List<string> groupList = new List<string>();
foreach (ListItem item in lbFullAccess.Items)
{
groupList.Add(item.Value.ToString());
}
foreach (ListItem item in lbContributor.Items)
{
groupList.Add(item.Value.ToString());
}
foreach (ListItem item in lblReadOnly.Items)
{
groupList.Add(item.Value.ToString());
}
Warum einfach nicht über die Listboxen iterieren und überprüfen? Wie wäre es mit DISTINCT für jedes Listenfeld beim Absenden? – Ostap