Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Bloccare un ciclo foreach

    sto diventando matto perchè nn riesco a capire il comportamento di sto ciclo e come rimediare:
    codice:
                string filePath = "C:\\Documents and Settings\\Administrator\\Desktop\\Upload\\";
                string ext = "mpg avi wav";
                string[] arr = ext.Split(' ');
                string extUpload;
    .....
                        foreach (string estensioni in arr)
                        {
                            if (extUpload != estensioni)
                            {
                                lblMessage.Text = "Estensione non supportata";
                            }
                            else
                            {
                                try
                                {
                                    FileUpload1.SaveAs(filePath);
                                    return;
                                }
                                catch (Exception ex)
                                {
                                    lblMessage.Text = ex.Message;
                                }
                            }
                        }
    se l'estensione nn c'è compare il messaggio e nn fa l'upload.
    se c'è fa l'upload ma il messaggio compare lo stesso.
    so che il problema è nel foreach ma nn so come risolverlo.
    ci ho sbattutto la testa tutto il week end senza trovare una soluzione.
    potete aiutarmi?

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472
    Nel tuo ciclo tu valuti tutte le possibili estensioni: se l'estensione è supportata fai l'upload, altrimenti segnali l'errore.

    Quando determini che un'estensione è corretta, dovresti fare l'upload (come già fai) ma dovresti anche rimuovere un eventuale messaggio di errore legato a un controllo di un'estensione precedente e interrompere il ciclo affinché non vengano effettuati ulteriori controlli dell'estensione (visto che hai già trovato una corrispondenza e sei riuscito a fare l'upload).
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  3. #3
    intanto ho scambiato if ed else:
    codice:
                        foreach (string estensioni in arr)
                        {
                            if (extUpload == estensioni)
                            {
                                try
                                {
                                    FileUpload1.SaveAs(filePath);
                                    break;
                                }
                                catch (Exception ex)
                                {
                                    lblMessage.Text = ex.Message;
                                }
                            }
                            else
                            {
                                lblMessage.Text = "Estensione non supportata";
                            }
                        }
    poi, teoricamente nn basterebbe break per interrompere il ciclo??

    ps: scusa mi ero dimenticato di mettere il linguaggio usato che non è VB.NET ma C#.
    grazie per l'aggiunta!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.