Stored procedure, datareader returnerer intet
Jeg er ved at oprette en metode, der fylder en listbox med de forfattere, som kommer fra et valgt område defineret i et text felt.min metode som en knap aktiverer, ser sådan ud:
private void btnAuthors_Click(object sender, System.EventArgs e)
{
SqlCommand myCommand = new SqlCommand();
myCommand.Connection = sqlConn;
myCommand.CommandType = CommandType.StoredProcedure;
myCommand.CommandText = "dbo.test";
myCommand.Parameters.Add("@State",SqlDbType.Char);
myCommand.Parameters["@State"].Value=txtState.Text;
try
{
if(myCommand.Connection.State==ConnectionState.Closed)
myCommand.Connection.Open();
SqlDataReader reader;
reader = myCommand.ExecuteReader();
lstAuthors.Text="";
while(reader.Read())
{
lstAuthors.Text += reader.GetString(0) + " " + reader.GetString(1) + reader.GetString(2)
+ reader.GetString(3) + " " + reader.GetChar(4);
}
myCommand.Connection.Close();
}
catch(SqlException ex)
{
MessageBox.Show(ex.Message.ToString());
}
}
min stored procedure ser sådan ud:
ALTER PROCEDURE dbo.test
(
@State char
)
AS
Select au_lname, au_fname, address, city, state from authors where state = @State
RETURN
hvori ligger fejlen. Min datareader er tom??? men burde indeholde en del data, når jeg eksekverer sql statement direkte mod databasen.