Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
Mit Linq alle Einträge auswählen, die ein Leerzeichen haben
agreen
myCSharp.de - Member



Dabei seit:
Beiträge: 5

Themenstarter:

Mit Linq alle Einträge auswählen, die ein Leerzeichen haben

beantworten | zitieren | melden

verwendetes Datenbanksystem: <MS SQL>

Hallo zusammen,
kann mir jemand helfen, wie ich eine Liste (Northwind - Customers) alle Städte ausgeben lassen kann, die ein Leerzeichen haben?


 void Aufgabe3()
        {
            string sqlString = "SELECT ort from personen";
            OdbcDataReader reader = this.AccessDb(sqlString);
            cityList = new List<string>();

            while (reader.Read())
            {
                cityList.Add(reader.GetString(0));
            }
            odbcConnection.Close();

            foreach (string s in BlankList(cityList))
            {
                Console.WriteLine(s);
            }
        }


        static IEnumerable<string> BlankList(IEnumerable<string> e)
        {
            // Use LINQ to sort the array received and return a copy.
            var sorted = from s in e
                         orderby s.Length ascending
                         select s;

            var ListBlank = sorted
                      .Where(c => ListBlank.Stadt.Equals(city))
                      .Select(c => c.Name);

            return ListBlank;
        }
private Nachricht | Beiträge des Benutzers
Abt
myCSharp.de - Team

Avatar #avatar-4119.png


Dabei seit:
Beiträge: 15.832

beantworten | zitieren | melden

Mit Contains.
private Nachricht | Beiträge des Benutzers
agreen
myCSharp.de - Member



Dabei seit:
Beiträge: 5

Themenstarter:

beantworten | zitieren | melden

das klappt fast ... wie kann ich aber nur ein Leerzeichen abfragen


 foreach (string s in filteredList)
                {
                    if (s.Contains("Atlanta"))
                    Console.WriteLine(s);
                }

Wenn ich eine Stadt eintrage, gehts aber " " leider nicht.
private Nachricht | Beiträge des Benutzers
david.m
myCSharp.de - Member



Dabei seit:
Beiträge: 129

beantworten | zitieren | melden

Die genau EIN Leerzeichen haben?

Mit den verschiedenen Überladungen der String.LastIndexOf Methode.
private Nachricht | Beiträge des Benutzers
agreen
myCSharp.de - Member



Dabei seit:
Beiträge: 5

Themenstarter:

beantworten | zitieren | melden

vielleicht habe ich mich falsch ausgedrückt, ich habe eine Tabelle von Städten aus der Datenbank ausgelesen (z.B Berlin, Los Angeles, Las Vegas, Atlanta, ...) und ich muss Städte auslesen, die ein Leerzeichen beinhalten.
private Nachricht | Beiträge des Benutzers
T-Virus
myCSharp.de - Member



Dabei seit:
Beiträge: 1.977
Herkunft: Nordhausen, Nörten-Hardenberg

beantworten | zitieren | melden

Warum liest du die Städte dann nicht direkt aus der DB, die Leerzeichen haben?
Dann brauchst du zum einen nicht alle einladen und zum anderen hast du gleich alle mit einem Leerzeichen drin.
Kannst du dann z.B. über Like machen.
Alternativen dürfte es in SQL je nach Datenbank auch andere geben.

T-Virus
Developer, Developer, Developer, Developer....

99 little bugs in the code, 99 little bugs. Take one down, patch it around, 117 little bugs in the code.
private Nachricht | Beiträge des Benutzers
agreen
myCSharp.de - Member



Dabei seit:
Beiträge: 5

Themenstarter:

beantworten | zitieren | melden

Im SQL bekomme ich das hin


SELECT ort from personen WHERE REGEXP_LIKE( ort, '[ ]{1}' ) 


ich bekomme das nicht hin, mit Linq die Datensätze auszulesen, die ein Leerzeichen haben. Kann mir einer sagen, wie die Abfrage in Linq auszusehen hat?
private Nachricht | Beiträge des Benutzers
LaTino
myCSharp.de - Experte

Avatar #avatar-4122.png


Dabei seit:
Beiträge: 3.003
Herkunft: Thüringen

beantworten | zitieren | melden

Wie Abt direkt in der ersten Antwort schrieb.


var filteredCities = await _context.Cities.Where(p => p.Name.Trim().Contains(' ')).ToListAsync();

Übrigens ist auch dein SQL nicht ganz korrekt.

LaTino
"Furlow, is it always about money?"
"Is there anything else? I mean, how much sex can you have?"
"Don't know. I haven't maxed out yet."
(Furlow & Crichton, Farscape)
private Nachricht | Beiträge des Benutzers
agreen
myCSharp.de - Member



Dabei seit:
Beiträge: 5

Themenstarter:

beantworten | zitieren | melden

vielen Dank, das habe ich gebraucht.
private Nachricht | Beiträge des Benutzers