Mostrar dados em uma GridView C#
Olá galerinha. Sempre que a coisa aperta lá viemos nós buscando solução....
Pois bem, desta vez é o seguinte:
Quero realizar uma consulta em um banco e mostrar somente os dados filtrados.
Na minha página principal tenho uma TextBox com a ID "txtNome". Nesta txtNome eu escrevo o nome da pessoa que quero procurar no banco. Então clico no botão "btnConsultar".
Eis meu código:
protected void btnConsulta_Click(object sender, EventArgs e)
{
string strStringConn = @"Data Source=.\SQLEXPRESS;Initial Catalog=DevelopmentDB;Integrated Security=True";
string strStringComando = "SELECT Nome,Sobrenome,Usuario,Grupo FROM CadastroUsuarios WHERE Nome=@nome";
SqlConnection objSqlConn = new SqlConnection(strStringConn);
SqlCommand objSqlComando = new SqlCommand(strStringComando, objSqlConn);
SqlDataReader leitura = null;
objSqlComando.Parameters.Add("@nome", SqlDbType.NVarChar);
objSqlComando.Parameters["@nome"].Value = txtNome.Text.ToLower();
try
{
objSqlConn.Open();
if (objSqlConn.State == ConnectionState.Open)
{
leitura = objSqlComando.ExecuteReader();
while (leitura.Read())
{
gridLeitura.DataSource = leitura;
//gridLeitura.DataBind();
}
gridLeitura.DataBind();
leitura.Close();
objSqlConn.Close();
}
}
catch (Exception ex)
{
lblExcecao.Text = ex.ToString();
objSqlConn.Close();
}
}Desta forma nada é exibido. Se eu faço assim:
protected void btnConsulta_Click(object sender, EventArgs e)
{
string strStringConn = @"Data Source=.\SQLEXPRESS;Initial Catalog=DevelopmentDB;Integrated Security=True";
string strStringComando = "SELECT Nome,Sobrenome,Usuario,Grupo FROM CadastroUsuarios WHERE Nome=@nome";
SqlConnection objSqlConn = new SqlConnection(strStringConn);
SqlCommand objSqlComando = new SqlCommand(strStringComando, objSqlConn);
SqlDataReader leitura = null;
objSqlComando.Parameters.Add("@nome", SqlDbType.NVarChar);
objSqlComando.Parameters["@nome"].Value = txtNome.Text.ToLower();
try
{
objSqlConn.Open();
if (objSqlConn.State == ConnectionState.Open)
{
leitura = objSqlComando.ExecuteReader();
while (leitura.Read())
{
gridLeitura.DataSource = leitura;
gridLeitura.DataBind();
}
//gridLeitura.DataBind();
leitura.Close();
objSqlConn.Close();
}
}
catch (Exception ex)
{
lblExcecao.Text = ex.ToString();
objSqlConn.Close();
}
}Só a primeira linha da minha tabela do meu banco é exibida qundo eu faço a consulta correta.
Não sei como fazer para quando eu, por exemplo, consultar pelo nome "João", apareçam todos os "joães" do banco.
Toda ajuda é bem vinda http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif
Discussão (5)
Carregando comentários...