C# List mit mehreren objekten

Hallo, ich will eine C# Liste erstellen, die mehrere Objekte unterstützt.
Etwa so:

Code:
List<string,string,bool,bool> x = new List<string,string,bool,bool>;

List.add("Key","Value",false,true); 
List.add("Key1","Value1",true,false);

Geht so etwas?

Bitte um antwort!
 
Zuletzt bearbeitet:
Hi

C#:
public class SBB {
    public String s;
    public bool b1;
    public bool b2;

    public SBB(String s, bool b1, bool b2) {
        this.s = s;
        this.b1 = b1;
        this.b2 = b2;
    }
}

...

Dictionary<string, SBB> x = new Dictionary<string, SBB>;
 
x.add("Key", new SBB("Value", false, true)); 
x.add("Key1", new SBB("Value1", true, false));

SBB steht für Stringboolbool. Beliebiger Name wählbar.
 
Ähh ja, danke :)
Ausbessern...

edit: Und im Ausgangscode fehlt noch der Variablenname, sogar das hab ich so übernommen :D
 
Ok erstmal Danke für die Antworten.
Sry das ich im Ausgangscode die Variable Vergessen habe.
(Fehler ist schon behoben)
Nun habe ich aber das problem:
Wie kann ich das jetzt auslesen, ich bin ín c# noch nicht sehr geübt.
Bisher ist es so:
Code:
 public void getDicValues(Dictionary<string, SBB> dic)//hier her übergebe ich die Dictonary
        {

                            
               

                for (int r = 0; r < dic.Count; r++)
                {
                  
                   String val = dic.Values[r]; //Soll die Sitng Value herauslesen

                   String key =  dic.Keys[r]; // Soll den String key herauslesen
                  Bool b1 = dic.Values[r]; // Soll den Bool wert b1 herauslesen
  Bool b2 = dic.Values[r]; // Soll den Bool wert b2 herauslesen
}

Vielen Dank im Voraus
 
Danke leider Funtioniert das nicht.

Code:
 for (int r = 0; r < doc.Count; r++)
         {

             bool b2 = doc.Values[r].b2; // Soll den Bool wert b2 herauslesen  Hier entsteht ein Fehler
         }
Hier ist der Fehler:

c# Fehler.png

Hat jemand eine Antwort darauf?

Vielen Dank ;-)
 
Zuletzt bearbeitet:
Ganz und gar nicht.

Mal eine andere Frage: Willst du, wie im Ausgangscode
C#:
List<string,string,bool,bool> x = new List<string,string,bool,bool>;
 
List.add("Key","Value",false,true); 
List.add("Key1","Value1",true,false);
"angedeutet", über den Keystring zu den anderen drei Werten kommen,
oder sind alle 4 "gleichrangig"?
 
Alle 4 sind gleichrangig.
Ich will erst alle Werte hinzufügen und dann auf den Key und die 3 Values zugreifen und in eigene Variablen schreiben.
Die Liste dient nur als Zwischenspeichermedium.

Hab die Lösung gedunden:

Code:
 for (int r = 0; r < dic.Count; r++)
                {
                 Bool b1= dic[r].b1;

                   String key =  dic.Keys[r];

                                        
                    String value = dic[r].s;

}
Das funktioniert so.

Ich bevorzuge aber diesen Code:

Code:
 foreach (KeyValuePair<string, SBB> kvp in dic)
            {
                String key = kvp.Key;
                SBB value = kvp.Value;
                bool b1 = value.b1;

            }

Noch mal vielen Dank für die Antworten. :)
 
Zurück