Usuário com melhor resposta
Retornando Valores do data Grid View

Pergunta
-
Boa noite ,
Estou com um problema bizarro, eu tenho uma tabela no banco de dados Sql Server, onde tem um campo bit, eu estou puxando dados dessa tabela, que na verdade é uma View... Eu faço a minha instrução Select, e executo pelo SqlDataReader (dr = cmd.ExecuteReader()), quando o valor Ativo é false (vindo do c# = 0) ele retorna os valores, mas quando vem true do c#, ele da erro (A cadeia de caracteres de entrada não estava em um formato correto).... Eu usei essa mesma lógica em outra tela e funciona.... segue o código das telas que não funciona:
OBJETO TRANSFERENCIA
public class Funcionario : Pessoa
{
public int id_Func { get; set; }
public string funcao { get; set; }
public int id_Gerente { get; set; }
public bool ativo { get; set; }
public int id_Loja { get; set; }
}public class Pessoa
{
public int id_Pessoa { get; set; }
public string cpf { get; set; }
public string nome { get; set; }
public string sexo { get; set; }
}==========================
NEGOCIO
public List<Funcionario> SelecionarFuncionarioPorNome (string nome, bool ativo, int idLoja)
{
_SQL = @"select
Id_Func,NomeFuncionario,Funcao,Cpf,Sexo,id_Gerente,Ativo,idLoja
from VW_FUNCIONARIO_COMPLETO
where NomeFuncionario like '%' + @nomefunc + '%' and Ativo = @ativo and idLoja = @idLoja";
//
cmd = new SqlCommand();
cmd.Connection = ConexaoBancoSQLServer.Conectar();
cmd.Parameters.AddWithValue("@nomefunc", nome);
cmd.Parameters.AddWithValue("@ativo", ativo);
cmd.Parameters.AddWithValue("@idLoja", idLoja);
/*
cmd.Parameters.Add("@nomefunc", SqlDbType.VarChar, 60).Value = nome;
cmd.Parameters.Add("@ativo", SqlDbType.Bit, 1).Value = ativo;
cmd.Parameters.Add("@idLoja", SqlDbType.Int).Value = idLoja;
*/
cmd.CommandText = _SQL;
dr = cmd.ExecuteReader();
List<Funcionario> ListaFuncionarios = new List<Funcionario>();
while (dr.Read())
{
Funcionario func = new Funcionario();
func.id_Func = int.Parse(dr["Id_Func"].ToString());
func.nome = dr["NomeFuncionario"].ToString();
func.funcao = dr["Funcao"].ToString();
func.cpf = dr["Cpf"].ToString();
func.sexo = dr["Sexo"].ToString();
func.id_Gerente = int.Parse(dr["id_Gerente"].ToString());
func.ativo = Convert.ToBoolean(dr["Ativo"].ToString());
func.id_Loja = int.Parse(dr["idLoja"].ToString());
ListaFuncionarios.Add(func);
}
return ListaFuncionarios;
}=====================================
TELA
private void btnPesquisar_Click(object sender, EventArgs e)
{
try
{
bool AtivoDesativo = false;
if (!rdbDesativado.Checked)
AtivoDesativo = true;
if (cmbLoja.Text == "")
MessageBox.Show("Escolha uma loja");
else
AtualizarGrid(txtNome.Text, AtivoDesativo, Convert.ToInt32(cmbLoja.SelectedValue));
}
catch (Exception ex)
{
MessageBox.Show("Erro: " + ex.Message);
}
}public void AtualizarGrid(string nome, bool ativo, int idLoja)
{
List<Funcionario> listaFuncionario = new List<Funcionario>();
funcionarioNegocio = new FuncionarioNegocio();
listaFuncionario = funcionarioNegocio.SelecionarFuncionarioPorNome(nome, ativo, idLoja);
dgvPrincipal.DataSource = null;
dgvPrincipal.DataSource = listaFuncionario;
dgvPrincipal.Update();
dgvPrincipal.Refresh();
}
desde já agradeço a atenção :-)
Respostas
-
Luciano
Segue alguns artigos para te ajudar.
https://ecode10.com/Pesquisar?q=gridview
Espero ter ajudado. Se ajudei, favor marcar no fórum falando que foi útil.
Mauricio Junior - Comunidade www.ecode10.com- Marcado como Resposta Filipe B CastroModerator segunda-feira, 31 de julho de 2017 13:57
Todas as Respostas
-
Luciano
Segue alguns artigos para te ajudar.
https://ecode10.com/Pesquisar?q=gridview
Espero ter ajudado. Se ajudei, favor marcar no fórum falando que foi útil.
Mauricio Junior - Comunidade www.ecode10.com- Marcado como Resposta Filipe B CastroModerator segunda-feira, 31 de julho de 2017 13:57
-
Bom dia,
Por falta de retorno, essa thread está sendo encerrada.
Se necessário, favor abrir uma nova thread.
Atenciosamente,Filipe B de Castro
Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita
MSDN Community Support
Por favor, lembre-se de Marcar como Resposta as postagens que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.