private Autor CrearAutorDesdeFila(DataRow fila)
        {
            var id       = fila["autor_id"] as int? ?? 0;
            var numero   = fila["nro_autor"] as int? ?? 0;
            var nombre   = fila["nombre"] as string;
            var apellido = fila["apellido"] as string;

            return(new Autor(
                       id: EntidadId.Of(id),
                       numero: NroAutor.Of(numero),
                       nombre: Nombre.Of(nombre),
                       apellido: Apellido.Of(apellido)
                       ));
        }
        private Socio SocioDesdeFila(DataRow fila)
        {
            int    id       = fila["socio_id"] as int? ?? 0;
            int    nroSocio = fila["nro_socio"] as int? ?? 0;
            string nombre   = fila["nombre"] as string;
            string apellido = fila["apellido"] as string;
            bool   activo   = fila["activo"] as bool? ?? true;

            return(new Socio(
                       id: EntidadId.Of(id),
                       nroSocio: NroSocio.Of(nroSocio),
                       nombre: Nombre.Of(nombre),
                       apellido: Apellido.Of(apellido),
                       activo: Estado.Of(activo)
                       ));
        }
        private Prestamo CrearPrestamoDesdeFila(DataRow fila)
        {
            var id              = fila["prestamo_id"] as int? ?? 0;
            var nro             = fila["nro_prestamo"] as int? ?? 0;
            var fechaPrestamo   = fila["fecha_prestamo"] as DateTime? ?? default;
            var fechaDevolucion = fila["fecha_devolucion"] as DateTime? ?? default;
            var socio           = SocioDesdeFila(fila);
            var libro           = CrearLibroDesdeFila(fila);

            return(new Prestamo(
                       id: EntidadId.Of(id),
                       numero: NroPrestamo.Of(nro),
                       socio: socio,
                       libro: libro,
                       fechaPrestamo: Fecha.Of(fechaPrestamo),
                       fechaDevolucion: Fecha.Of(fechaDevolucion)
                       ));
        }
        private Libro CrearLibroDesdeFila(DataRow fila)
        {
            var id        = fila["libro_id"] as int? ?? 0;
            var nro       = fila["nro_libro"] as int? ?? 0;
            var titulo    = fila["titulo"] as string;
            var isbn      = fila["isbn"] as string;
            var editorial = fila["editorial"] as string;
            var fecha     = fila["fecha"] as DateTime? ?? default;

            return(new Libro(
                       id: EntidadId.Of(id),
                       numero: NroPublicacion.Of(nro),
                       autores: new List <Autor>(),
                       fecha: Fecha.Of(fecha),
                       titulo: Titulo.Of(titulo),
                       isbn: ISBN.Of(isbn),
                       editorial: Editorial.Of(editorial)
                       ));
        }