Visual Studio Syntax Bug

  • C#
  • .NET (FX) 4.5–4.8

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von thefiloe.

    Visual Studio Syntax Bug

    Hallo,


    Visual Studio meldet mir folgenden Fehler "Eine eingebettete Anweisung kann keine Deklaration und keine Anweisung mit Bezeichnung sein." bei folgenden Code:

    C#-Quellcode

    1. Random rmd = new Random();
    2. if (lbFiles.Items.Count.ToString() != "0")
    3. {
    4. string winner = lstUsers.Items[rmd.Next(lstUsers.Items.Count)].ToString();
    5. AddToChatWindow(winner + " hat gewonnen.", "0");
    6. }


    ​winner wird bei AddToChatWindow() makiert.
    Ich habe das mit mehren Schleifen probiert aber es kommt nur bei dieser Schleife. Ich habe die schon mehrmals neu geschrieben aber ich bekomme den selben Fehler.

    Manchmal aber auch den Fehler "Verwendung der nicht zugewiesenen lokalen Variablen 'winner'" wenn ich den Code neu schreibe. Was muss ich machen?
    Versuch mal so:

    C#-Quellcode

    1. var rnd = new Random();
    2. if(lbFiles.Item.Count != 0) {
    3. var index = rnd.Next(lstUsers.Items.Count);
    4. var winner = lstUsers.Items[index];
    5. AddToChatWindow(winner + " hat gewonnen", "0");
    6. }

    KaskadekingDE on GitHub :)
    Bitte keine Fragen über Programmierung per PN! Dafür ist das Forum hier.

    Who cares? ¯\_(ツ)_/¯
    Was sind lbFiles und lstUsers und welche Signatur hat AddToChatWindow?

    Edit: Davon abgesehen würde mich schon interessieren, wo in dem ganzen Code eine Schleife vorkommt.

    Edit 2: Und in welchem Kontext steht der Code?
    Am besten, du postest auch den umschließenden Code, bis hoch zur Methode.
    "Luckily luh... luckily it wasn't poi-"
    -- Brady in Wonderland, 23. Februar 2015, 1:56
    Desktop Pinner | ApplicationSettings | OnUtils

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Niko Ortner“ ()

    @radio-ffk
    Das macht nicht im aller geringsten Sinn.
    @KaskadekingDE
    Wenn das oben nicht funktioniert, wird deines auch nicht funktionieren. Ist ja genau das selbe. Maximal etwas übersichtlicher aber gut...

    Zeig mal den restlichen Code. Wobei ich auch sagen muss, dass der derzeitige Code selbst murks ist. z.B. machst du aus einem Integer einen String nur um ihn dann mit dem String "0" zu vergleichen. Weshalb? Sinnloser gehts nicht.


    Opensource Audio-Bibliothek auf github: KLICK, im Showroom oder auf NuGet.