Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   .NET-Sprachen (https://www.delphipraxis.net/82-net-sprachen/)
-   -   C# C# Linq string enthält ... (https://www.delphipraxis.net/199561-c-linq-string-enthaelt.html)

EarlyBird 1. Feb 2019 09:40

C# Linq string enthält ...
 
Hallo
Ich hoffe ich kann hier auch eine Frage zu C# Linq stellen :oops:

Ich habe folgendes Problem:
Ich möchte eine List mit einer eigenen Class abfragen
Delphi-Quellcode:
public call myClass
{
   public int32 ID {get; set;} 
   public string tdName {get; set;} 
   public string tdText {get; set;} 
   public string[] tdArray {get; set;} 
}

IList<myClass> myClasses = new List<myClasses>();

myClass newmyClass = new myClass() {ID = 1 , tdName = 'no1', tdText = 'Tisch, Stuhl, Bank, Kissen'};
myClasses.add(newmyClass);

myClass newmyClass = new myClass() {ID = 2 , tdName = 'no2', tdText = 'Sessel, Sofa, Tisch, Regal'};
myClasses.add(newmyClass);

myClass newmyClass = new myClass() {ID = 3 , tdName = 'no3', tdText = 'Sofa, Regal, Bett, Schrank'};
myClasses.add(newmyClass);
Ich möchte nun per Linq die Daten abfragen die in der tdText z.B. Tisch enthalten
Ergebnis:

id tdName tdText
1 no1Tisch, Stuhl, Bank, Kissen
2 no2Sessel, Sofa, Tisch, Regal


Versucht habe ich es wie folgt:
Delphi-Quellcode:
var myErgebnis = from myEClass in myClasses
   where (myEClass.tdText.Contains("Tisch") )
   select new {myEClass.ID, myEClass.tdName, myEClass.tdText}
Leider immer ohne Ergebnis.

Ich habe auch versucht tdText als array zu nutzen und dann abzufragen.
Leider auch ohne Ergebnis.

Ich hoffe Ihr könnt mir weiterhelfen.

Vielen Dank schon mal
EarlyBird

Neutral General 1. Feb 2019 09:47

AW: C# Linq string enthält ...
 
Hast du tatsächlich genau den Code mal ausprobiert?
Sieht für mich aus als müsste das funktionieren.
Wobei ich mit der LINQ Syntax nicht so vertraut bin, habe LINQ immer "manuell" über die entsprechenden Methoden aufgerufen.
Von daher: Bist du dir sicher, dass der gesuchte String (case-sensitiv!) auch so irgendwo in einem der Objekte enthalten ist?

Edit: Dein Beispielcode funktioniert (wenn man die (Syntax)fehler behebt):

https://dotnetfiddle.net/CEOxGl

EarlyBird 1. Feb 2019 10:09

AW: C# Linq string enthält ...
 
Ich habe den Code so im Forum eingetippt und nicht ausprobiert:oops:
Ist aber eigentlich identisch mit meinem Code.
Werde noch mal alles überprüfen und dann berichten.
Ich war mir halt auch nicht sicher ob es mit dem Code funktionieren sollte oder nicht.
Vielen Dank für deine Hilfe.
Super Tipp mit netFiddle:-D:thumb:


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:17 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz