>
Tenho uma tabela no banco de dados com o nome de eventos e coloquei um calendario na pagina home para que o usuario ao selecionar uma data, apenas será mostrado no dataList os eventos da data selecionada. Já tentei de diversas formas, mas independentemente da data que eu escolha a consulta sempre retorna todos os eventos cadastrados no banco. Segue o codigo... se algum puder me ajudar
string strCon = ConfigurationManager.ConnectionStrings["mydbConnectionString"].ConnectionString;
string SQL = "SELECT evento.nome_evento, prospeccao.nome FROM evento INNER JOIN prospeccao ON evento.id_prospeccao = prospeccao.id_prospeccao";
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
}
DataListEventos.DataSource = buscaEvento();
DataListEventos.DataBind();
}
public MySqlDataReader buscaEvento()
{
MySqlDataReader dr = null;
MySqlConnection conn = new MySqlConnection(strCon);
MySqlCommand cmd = new MySqlCommand(SQL, conn);
string data;
SQL += " WHERE data_evento = @data";
data = Calendario.SelectedDate.ToShortDateString(); ;
conn.Open();
if (conn.State == System.Data.ConnectionState.Open)
{
cmd.Parameters.AddWithValue("@data", Convert.ToDateTime( data));
dr = cmd.ExecuteReader();
}
return dr;
}
Bruna,
Coloque um response write no sql antes do objeto dr e me retorne com qual sql ele exibe.
Outra coisa, joga a variável sql dentro do método buscarEvento.