Speedy7912
Gebruiker
- Lid geworden
- 4 dec 2009
- Berichten
- 65
Dames heren,
ik wil een variabele vullen met een sql quey. Binnen een for loop heb ik hiervoor een query opgesteld welke de variabele vult (zie onderstaande 'code').
vanwaar deze foutmelding. Als ik het goed begrepen heb (ja ik ben een newbie) is de scope van de variabele 'nummer' groot genoeg om 'nummer' buiten de for loop en de try/catch constructie te kunnen gebruiken.
waar schiet mijn kennis te kort?
Na verder zoeken komt het probleem vermoedelijk voort uit de try/catch/finaly afhandeling....hoe los ik dit probleem op
Ik heb de code afgesplitst van het geheel op de volgende manier:
ik wil een variabele vullen met een sql quey. Binnen een for loop heb ik hiervoor een query opgesteld welke de variabele vult (zie onderstaande 'code').
Code:
private void (.....)
{
int nummer;
for loop
{
SqlCommand Medewerker = new SqlCommand("Select MDWID from Medewerker Where PersoneelsNr =" + PersoneelsNr, conn);
da.SelectCommand = Medewerker;
// 'nummer' wordt gevult met query resultaat op de volgende manier
try
{
conn.Open();
object mdw = da.SelectCommand.ExecuteScalar();
nummer = (int)mdw;
}
catch...
}
//'nummer' wordt gebruikt maar met foutmelding : Use of unassigned local variable 'nummer'
}
vanwaar deze foutmelding. Als ik het goed begrepen heb (ja ik ben een newbie) is de scope van de variabele 'nummer' groot genoeg om 'nummer' buiten de for loop en de try/catch constructie te kunnen gebruiken.
waar schiet mijn kennis te kort?
Na verder zoeken komt het probleem vermoedelijk voort uit de try/catch/finaly afhandeling....hoe los ik dit probleem op
Ik heb de code afgesplitst van het geheel op de volgende manier:
Code:
private int getMdwID(int personeelsNr)
{
int ID;
/*****************************************************************************
*
* Get MDWID
*
*****************************************************************************/
SqlCommand Medewerker = new SqlCommand("Select MDWID from Medewerkers Where PersoneelsNr =" + personeelsNr.ToString(), conn);
da.SelectCommand = Medewerker;
try
{
conn.Open();
object mdw = da.SelectCommand.ExecuteScalar();
ID = (mdw == null) ? (int)0 : (int)mdw;
}
catch (SqlException ex)
{
string str;
str = "Source:" + ex.Source;
str += "\n" + "Message:" + ex.Message;
str += "\nSelect Command.";
MessageBox.Show(str, "Database Exception. Selection failed");
}
catch (Exception ex)
{
string str;
str = "Source:" + ex.Source;
str += "\n" + "Message:" + ex.Message;
str += "\nSelect Command.";
MessageBox.Show(str, "Generic Exception");
}
finally
{
if (conn.State == ConnectionState.Open)
{
conn.Close();
ID = (ID == null) ? 0 : ID;
}
}
return ID;
}
Laatst bewerkt: