VB.NET If-Else in der Liste

8

Ich möchte nur wissen, ob es einen Ansatz in VB.NET gibt, der feststellen kann, ob ein bestimmter Wert in einer Liste existiert oder etwas, das in meiner If-else-Bedingung verwendet werden kann. Was ich jetzt mache, ist folgendes:

%Vor%

Das funktioniert gut, aber wie wäre es, wenn ich in Zukunft Hunderte von Strings mit ToStatus vergleichen würde? Es wird ein Albtraum! Nun, wenn eine solche Funktionalität existiert, wie kann ich "Und" und "Oder" in der Aussage hinzufügen?

Vielen Dank im Voraus!

    
dpp 18.07.2011, 01:32
quelle

6 Antworten

18

Sie können die Funktion Contains verwenden:

%Vor%     
SLaks 18.07.2011, 01:34
quelle
4

Sie können wählen Fall

%Vor%     
jusdoo 19.05.2012 15:24
quelle
4

if {"1CE","2TL","2PM"}.Contains(ToStatus)

dann ..... Ende ich

    
Petr Moravek 20.11.2015 08:02
quelle
3

Wie Slaks darauf hingewiesen haben , können Sie Contains in einer enumerable Sammlung verwenden. Aber ich denke, Lesbarkeit leidet. Es ist mir egal, ob eine Liste meine Variable enthält. Ich möchte wissen, ob meine Variable in einer Liste ist. Sie können contains wie folgt in eine Erweiterungsmethode einfügen:

%Vor%

Dann ruf so an:

%Vor%     
KyleMit 22.07.2013 12:43
quelle
0

Für .NET 2.0

Ich stieß auf ein anderes Problem, bei dem SLaks Lösung nicht funktioniert, das heißt, wenn Sie .NET 2.0 verwenden, wo die Methode Contains nicht vorhanden ist. Also hier ist die Lösung:

%Vor%

VB.NET - Alternative zu Array.Contains?

    
dpp 28.08.2012 06:50
quelle
-1

Entfernen Sie die Duplikate aus der Liste

%Vor%     
Iladarsda 18.11.2013 11:15
quelle