Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2014
    Messaggi
    110

    C# se datareader è vuoto allora....

    Ciao a tutti,
    ecco il mio problema:
    faccio una ricerca in una tabella del database che mi restituisce 4 campi.
    codice:
    using (SqlCeConnection conn = new SqlCeConnection(ConfigurationManager.ConnectionStrings["DataBase1"].ConnectionString))                    try
                        {
    
    
                            conn.Open();
                            string Query = "select * from IMO where nome = '" + nave + "'";
                            SqlCeCommand createCommand = new SqlCeCommand(Query, conn);
    
    
                            SqlCeDataReader dr = createCommand.ExecuteReader();
    
    
                                                   
                                while (dr.Read())
                                {
                                
                                    //passo il numero colonna relativo al "cognome"
                                    string sImo = dr.GetString(0);
                                    string sNome = dr.GetString(1);
                                    string sTipo = dr.GetString(2);
                                    string sBandiera = dr.GetString(3);
    
    
                                    string imo = sImo.ToString();
    
    
    
    
                                    MessageBox.Show("Numero IMO: " + imo + "\n" + "\n" +
                                                    "tipo: " + sTipo + "\n" + "\n" +
                                                    "bandiera: " + sBandiera + "\n" + "\n"
                                                    , sNome);
    
    
                                }
    
    
                          
                            
    
    
                            
    
    
                        }
    
    
                        catch (Exception ex)
                        {
                            MessageBox.Show(ex.Message);
                        }
    
    
                        finally { 
                            conn.Close(); }
                }
    solo che quando trova campi vuoti vorrei che mi restituisse un messagebox che mi dice che devo andare ad aggiungerlo manualmente nel database o qualcosa del genenere.

    ho provato con :

    codice:
    if(dr.hasrows)
    {
      while (dr.read)
       ecc ecc}
    
    else
    {Messagebox.show("......"}
    però mi dà l'eccezione che SQL Server Compact non supporta chiamate alla proprietà HasRows se il cursore sottostante non è scorrevole

    aiutatemi pls!!!

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Campi vuoti? Forse intendi dire che vuoi controllare se sono stati restituiti record ...

    In questo caso, imposta una variabile a False prima del ciclo e impostala a True all'interno.

    All'uscita del ciclo controlla la variabile con una if ... se è uguale a False esegui la MessageBox
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2014
    Messaggi
    110
    me lo fai un esempino?????

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Ma che esempino dai... Una variabile e una if ...leggi quello che ho scritto
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2014
    Messaggi
    110
    Quote Originariamente inviata da oregon Visualizza il messaggio
    Ma che esempino dai... Una variabile e una if ...leggi quello che ho scritto
    ho risolto così:

    codice:
     
                                    bool hasrows = dr.Read();
    
    
                                    if(hasrows)
                                          { //dammi risultato}
                                    else
                                         {messagebox.show("dimmi qualcosa");}
    grazie ciao

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.