Caros Amigos
Não consigo levar os dados de retorno para outra tela com executeRead()
a função vai ao banco e traz porem não consigo retornar para quem chamou o metodo
public SqlDataReader ConsultaPlacaDiagnose(CommandType tiposql, string nomedaprocedure)
{
try
{
sqlcon = conectar();
sqlcon.Open();
SqlCommand cmd = sqlcon.CreateCommand();
cmd.CommandType = tiposql;
cmd.CommandText = nomedaprocedure;
foreach (SqlParameter parametro in colecaoparametro)
{
cmd.Parameters.Add(new SqlParameter(parametro.ParameterName , parametro.Value));
}
SqlDataReader dr = cmd.ExecuteReader();
if (dr.HasRows)
{
while (dr.Read())
{
CadastroDefeito defeito = new CadastroDefeito();
CadastroModeloCarro modelo = new CadastroModeloCarro();
defeito.defeitos = dr.GetString(0);
modelo.modelo = dr.GetString(1);
}
}
return dr;
}
e quem chamou foi esse metodo
public SqlDataReader CasultarPlacaDiagnose(CadastroCliente placa)
{
//acessoSql.limparparametros();
acessoSql.adiconarparametro("@placa", placa.placa);
SqlDataReader cliente = acessoSql.ConsultaPlacaDiagnose(CommandType.StoredProcedure, "uspPesquisaPlacaDiagnose");
foreach (SqlDataReader linha in cliente)
{
CadastroModeloCarro modelo = new CadastroModeloCarro();
CadastroDefeito defeito = new CadastroDefeito();
defeito.defeitos = Convert.ToString(linha["defeito"]);
modelo.modelo = Convert.ToString(linha["modelo"]);
}
return cliente;
}
Alguém pode me ajudar obrigado.