C# Enum mit int und string?
Bin noch relativ neu in C# und arbeite momentan mit enums.
Ich habe momentan eine liste, diese liste nimmt 2 Parameter an int und string.
Dort speichere ich werte ein, die ich dann wiederhole mit den Key (int).
Da ich nun aber 20-30 sachen speichern muss, stelle ich mir nun die frage ob ich für diesen zweck enums verwenden sollte.
public void Example(int index, string value)
{
if (!Liste.ContainsKey(index))
Liste.Add(index, value);
Liste.Remove(index);
Liste.Add(index, value);
}
hinzufuegen.Example(1, "Wird Hinzugefügt");
Das funktioniert zwar sehr gut so aber dennoch muss ich den überblick behalten welcher Key zu was gehört, das macht das ganze wiederrum schwierig zu lesen.
Wie kann ich so ein Model mit enums erstellen ?
Beispiel:
old:
hinzufuegen.Example(1, "Wird Hinzugefügt");
new:
string wert1 = "Wird Hinzugefügt";
hinzufuegen.Example(Enum1, wert1);
1 Antwort
Ich sehe in deinem Beispiel keine Enums? Bei new ist der einzige Unterschied, dass du den Wert über eine Variable übergibst und nicht als direktes Literal?
Zudem scheint deine Liste keine Liste zu sein, sondern ein Dictionary.
Wenn du Werte assoziativ zu Enum-Werten speichern möchtest, kann das so wie im folgenden Beispiel aussehen:
enum Colors { Blue, Green, Red };
Dictionary<Colors, string> colorAssociations = new Dictionary<Colors, string>
{
{ Colors.Blue, "Freedom" },
{ Colors.Green, "Hope" },
{ Colors.Red, "Love" }
};
Vielen dank.
Es ist genau das was ich gesucht habe.
Mir war nur nicht ganz Klar das ich im Dictionary das Enum mitangeben muss.
Vielen dank :D