elacruz88
10/10/2013 - 9:09 PM

C# Dao child class

C# Dao child class

using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using AppName.DAO.ExcepcionesDao;
using AppName.Entidades;

namespace AppName.DAO.DaoSqlServer
{
    public class DaoChild : AbstractDaoParent
    {
        private SqlCommand _cmd;
        private SqlDataReader _rdr;

        public override Entidad Agregar(Entidad entidad)
        {
            throw new NotImplementedException();
        }
        public override Entidad Modificar(Entidad entidad)
        {
            throw new NotImplementedException();
        }
        public override Entidad Consultar(Entidad estado)
        {
            var listaEstado = new List<Entidad>();
            try
            {
                AbrirConexion();
                _cmd = new SqlCommand("dbo.uSpselConsultarEstado", ObjConexion)
                {
                    CommandType = CommandType.StoredProcedure,
                    CommandTimeout = 10
                };
                _rdr = _cmd.ExecuteReader();

                while (_rdr.Read())
                {
                    Entidad elEstado = new Estado();

                    elEstado.Id = int.Parse(_rdr["CodEstado"].ToString());
                    (elEstado as Estado).ElEstado = _rdr["Estado"].ToString();
                    (elEstado as Estado).Razon = _rdr["Razon"].ToString();
                    elEstado.Valid = true;
                    listaEstado.Add(elEstado);
                }
                _rdr.Close();
                estado.Lista = listaEstado;
                estado.Valid = true;
            }
            catch (NullReferenceException ex)
            {
                throw new DatosException("Error nombre o clave nula", ex);

            }
            catch (SqlException ex)
            {
                throw new DatosException("Error en la consulta a Base de datos", ex);

            }
            catch (Exception ex)
            {
                throw new DatosException("Error General", ex);

            }
            finally
            {
                CerrarConexion();
            }
            return estado;
        }
        public override Entidad Eliminar(Entidad entidad)
        {
            throw new NotImplementedException();
        }
    }
}