763 Stimmen

Richtige Methode zum Initialisieren eines C#-Wörterbuchs mit Werten

Ich erstelle ein Wörterbuch in einer C#-Datei mit folgendem Code:

private readonly Dictionary FILE_TYPE_DICT
        = new Dictionary
        {
            {"csv", XlFileFormat.xlCSV},
            {"html", XlFileFormat.xlHtml}
        };

Es gibt eine rote Linie unter new mit dem Fehler:

Feature 'collection initilializer' kann nicht verwendet werden, da es nicht Bestandteil der ISO-2 C#-Sprachspezifikation ist

Was passiert hier?

Ich benutze die .NET-Version 2.

14voto

Zbigniew Punkte 26764

Objektinitialisierer wurden in C# 3.0 eingeführt. Überprüfen Sie, welche Framework-Version Sie anvisieren.

Übersicht von C# 3.0

5voto

amesh Punkte 1261

Mit # 6.0

var meinWoerterbuch = new Dictionary
{
    ["Key1"] = "Value1",
    ["Key2"] = "Value2"
};

0voto

Namig Hajiyev Punkte 801

Hier ist ein Beispiel für ein Wörterbuch mit einem Wörterbuchwert

            Dictionary> result = new() {
                ["success"] = new() {{1, "ok"} ,  { 2, "ok" } },
                ["fail"] = new() {{ 3, "ein Fehler" }, { 4, "ein Fehler 2" } },
            };

das Äquivalent dazu in JSON ist:

{
  "success": {
    "1": "ok",
    "2": "ok"
  },
  "fail": {
    "3": "ein Fehler",
    "4": "ein Fehler 2"
  }
}

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X