Laden...

String auf Eigenschaft der Elemente einer generische List<T> splitten.

Erstellt von Cornflake vor 10 Jahren Letzter Beitrag vor 10 Jahren 549 Views
Thema geschlossen
C
Cornflake Themenstarter:in
142 Beiträge seit 2007
vor 10 Jahren
String auf Eigenschaft der Elemente einer generische List<T> splitten.

Hallo Leute
Vllt kann mir jemand mit Linq, oder Generic Programmierung helfen.

Ursprünglich war folgende Situation vorhanden und alles funktionierte.


string Empfänger = "Tick,Trick,Track";
List<string> empf = new List<string>();   
empf.AddRange(Empfänger.Split(',', StringSplitOptions.RemoveEmptyEntries));

Jetzt hat sich folgendes geändert.


public class Kontakt
{
   public string NAME;
   public int ID;
}

string Empfänger = "Tick,Trick,Track";
List<Kontakt> empf = new List<Kontakt>();   

//!!! diese Zeile muss jetzt irgendwie umgeschrieben werden
empf.AddRange(Empfänger.Split(',', StringSplitOptions.RemoveEmptyEntries));

Ich möchte Tick,Trick,Track jetzt mit dem NAME des Kontakt neu angelegt werden.
Dass ID leer bleibt ist hierbei egal. Die ID wird dann später ergänzt. Nur ich will wieder die Liste haben am besten mit einem ein Zeiler. Bisher habe ich folgenden Ansatz gefunden.


empf.AddRange( Kontakt.OfType<NAME>().ToList());

Allerdings kann ich den so nicht verwenden. 🙁
Hat jemand eine Idee wie ich dieses Problem mit wenig Zusatzcodezeilen sauber lösen kann?

Grüße Cornflake

16.842 Beiträge seit 2008
vor 10 Jahren

Tut mir leid (sagt man halt so), aber den Thread schließ ich Dir.
Wie man ein Objekt erstellt, dessen Eigenschaft füllt und man dieses dann zu einer Liste hinzufügt: das sind Grundlagen.
Wie man das ganze dann in eine Zeile packt (wenns denn unbedingt sein muss) ist Syntax-Zucker.

Tipp:

var obj = new MyObject { Prop = Value };

Wie man das dann noch mit Linq verpackt... das wirste ja wohl echt rausfinden; die Faulheit nehmen wir / ich Dir nich ab. Dat is frech! 😉
Tipp: Select

Als Hilfsmittel gibts auch http://www.linqpad.net/

Thema geschlossen