Laden...

List/Collection: Jedes Element der <Klasse> durchsuchen

Erstellt von reloop vor 13 Jahren Letzter Beitrag vor 13 Jahren 930 Views
reloop Themenstarter:in
139 Beiträge seit 2010
vor 13 Jahren
List/Collection: Jedes Element der <Klasse> durchsuchen

Hallo Community,

gibt es einen einfachen und effizienten Weg eine ObservableCollection<meineKlasse> so zu durchsuchen, dass z.b. der Wert "xyz" in jeder Property von <meineKlasse> gesucht wird?

Bedeutet:

angenommen:

public class meineKlasse
{
   public string name {get;set;}
   public string email {get;set;}
   public int alter {get;set;}
   public datetime anmeldedatum {get;set;}
}

Meine Absicht ist es jetzt möglichst einfach jede Property (Name, Email, etc..) nach einem Wert zu durchsuchen..

Danke für eure Hilfe,

Gruss,
reloop

6.862 Beiträge seit 2003
vor 13 Jahren

Hallo,

wie soll das gehen? Die Properties sind doch unterschiedliche Typen. Wieso willst du alle nach einem Wert durchsuchen wenn der Wert ja gar nicht für alle gelten kann?

Baka wa shinanakya naoranai.

Mein XING Profil.

1.044 Beiträge seit 2008
vor 13 Jahren

Hallo reloop,

ich würde mal sagen in einer Schleife. Wo ist dein Problem? So wirklich habe ich dein Problem nicht verstanden.

zero_x

reloop Themenstarter:in
139 Beiträge seit 2010
vor 13 Jahren

Ich dachte es geht über eine schnellere Möglichkeit (LINQ?) anstatt in einer Schleife jedes Objekt samt Properties durchzugehen.

Und talla:
Ich habe ein Grid, in dem eine beliebige Anzahl an Spalten ausgegeben werden. Nun möchte ich dem Benutzer oben eine Textbox zur Verfügung stellen, in die er einen Wert eingeben kann und daraufhin jede Spalte nach diesem durchsucht wird.

Wie löst ihr dieses Problem?

Gruss,
reloop

D
216 Beiträge seit 2009
vor 13 Jahren

Sollte mit

collection.Where((o) => { return o.name == "hallo"; });

einfach gehen,
bzw.

return o.name == "hallo" || o.email = "hallo" || o.alter.ToString() == "hallo" || o.anmeldeDatum == DateTime.Parse("hallo");

wenn du in allen properties suchen willst.

Darth Maim

1.044 Beiträge seit 2008
vor 13 Jahren

Hallo reloop,

warum sollte das nicht mit LINQ funktionieren? Selbstverständlich klappt das mit LINQ(to Objects).

zero_x