Ciao come va, sto cercando di fare un piccolo programma in c# che lavoro con un database che contiene una tabella con i dati di tutti i dipendenti di un'azienda, ogni dipendente è identificato da un codice. L'utente che gira il mio programma dovrebbe inserire in una txtbox il codice di un dipendente e attraverso una select visualizzare i vari dati, nel caso in cui il codice digitato non esiste il programma lascia tutti i vari campi vuoti, io vorrei gestire questa situazione magari con un messaggio che il codice inserirto non esiste, ma come fare a controllare il risultato della select???
Questa è la mia select generata con VS2005, "Chapa" è il nome della colonna dove controllo il codice del dipendente:
oleDbDataAdapter1.SelectCommand.Parameters["Chapa"].Value = textBox4.Text;
oleDbDataAdapter1.Fill(dataSet11);
RISPOSTA
Il risultato della select sarà memorizzato in una tabella (la tabella di indice 0 dal breve codice allegato non avendo eseuito un mapping) eventualmente priva di righe se la select non ha prodotto risultato e non si sono generate eccezioni.
Per cui ti sarà sufficiente controllareil numero di righe della tabella ed operare di consegurnza; se da quello che scrivi il codice dipendente è unico allora puoi fare ancora di meglio; in corrispondenza di un numero superiore ad 1 di cifre sicuramente vi è un qualche problema allora solleverai un'eccezione
Codice di esempio a seguire
if(dataSet11.Tables[0] != null)
{
switch(dataSet11.Tables[0].Rows.Count)
{
case 0:
//Codice non trovato; mostra ilmessaggio di cui parli
break;
case 1:
//Codice trovato: avvalora i campi della form o della pagina
break;
default:
//Occorrenza multipla: qualche errore; solleva un'eccezione
break;
}
}
else
{
//Solleva un'eccezione
}
Spero di esserti stato di aiuto e Ar(p)resto