/// <summary> /// Busca por um usuário. /// </summary> /// <param name="codigoUsuario">Código do usuário.</param> /// <returns>Um DataSet tipado contendo os dados do usuário.</returns> public UsuarioDs.UsuarioRow BuscarUsuario(int codigoUsuario) { SqlConnection conn = new SqlConnection(this.connectionStr); SqlCommand cmd = new SqlCommand("BuscarUsuario", conn); cmd.CommandType = CommandType.StoredProcedure; // cria usuário UsuarioDs usuarioDs = new UsuarioDs(); UsuarioDs.UsuarioRow usuarioRow = usuarioDs.Usuario.NewUsuarioRow(); // parâmetros cmd.Parameters.Add("@CodigoUsuario", SqlDbType.Int).Value = codigoUsuario; cmd.Parameters.Add("@Nome", SqlDbType.NVarChar, 200).Direction = ParameterDirection.Output; cmd.Parameters.Add("@Login", SqlDbType.NVarChar, 20).Direction = ParameterDirection.Output; cmd.Parameters.Add("@Senha", SqlDbType.NVarChar, 80).Direction = ParameterDirection.Output; cmd.Parameters.Add("@Tipo", SqlDbType.SmallInt).Direction = ParameterDirection.Output; try { // abre conexão conn.Open(); // executa comando cmd.ExecuteNonQuery(); // dados do usuário usuarioRow.CodigoUsuario = codigoUsuario; usuarioRow.Nome = (string)cmd.Parameters["@Nome"].Value; usuarioRow.Login = (string)cmd.Parameters["@Login"].Value; usuarioRow.Senha = Criptografia.DesencriptarMD5((string)cmd.Parameters["@Senha"].Value); usuarioRow.Tipo = Convert.ToByte(cmd.Parameters["@Tipo"].Value); } catch (Exception) { throw; } finally { if (conn.State == ConnectionState.Open) { conn.Close(); } } return(usuarioRow); }
/// <summary> /// Lista todos os usuários. /// </summary> /// <returns>Um DataSet tipado contendo os dados dos usuários.</returns> public UsuarioDs ListarUsuarios() { SqlConnection conn = new SqlConnection(this.connectionStr); UsuarioDs usuarioDs = new UsuarioDs(); try { SqlDataAdapter adapter = new SqlDataAdapter("ListarUsuarios", conn); adapter.SelectCommand.CommandType = CommandType.StoredProcedure; // preenche dataSet adapter.Fill(usuarioDs, usuarioDs.Usuario.TableName); // atualiza strings das senhas foreach (UsuarioDs.UsuarioRow usuarioRow in usuarioDs.Usuario) { usuarioRow.Senha = Criptografia.DesencriptarMD5(usuarioRow.Senha); } // atualiza dataSet usuarioDs.AcceptChanges(); } catch { throw; } finally { if (conn.State == ConnectionState.Open) { conn.Close(); } } return(usuarioDs); }