ORAPOCO: Update 2 - El blog de Javier Torrecilla

ORAPOCO: Update 2

Introducción

Hace unos días publique ORAPOCO, un ORM ligero para trabajar con Bases de Datos Oracle, y su primera actualización

Cambios y Mejoras

- He realizado un poco de refactoring en el código.

- He creado una clase abstracta “Base” que va a servir como Base de nuestras Entidades.

- He añadido una propiedad para indicar el modo de ejecución de los comandos: Normal(Valor por defecto) o UnitOfWork.

- He modificado la plantilla, para dar la posibilidad de utilizar el atributo “DefaultValue” con los valores por defecto de la Base de Datos.

Ejemplos:

Las nuevas entidades generadas por la plantilla tendrán un aspecto similar a:

 

   1: public class SAMPLE : Base
   2:    {
   3:        [IsPK()]
   4:        [DefaultValue("SYS_GUID()")]
   5:        public System.Guid ID { get; set; }
   6:  
   7:  
   8:        public System.String NOMBRE { get; set; }
   9:  
  10:    }

 

Un ejemplo de utilización de UoW:

   1: var db = new POCO.Ora.TP.OracleDB("MyDB",POCO.Ora.TP.Enums.Mode.UnitOfWork);
   2: var sample = new POCO.Ora.TP.SAMPLE { NOMBRE = "Javier" };
   3: db.Insert<POCO.Ora.TP.SAMPLE>(sample);
   4: db.Insert<POCO.Ora.TP.SAMPLE>(new POCO.Ora.TP.SAMPLE { NOMBRE = "Alvaro" });
   5: db.Save();

 

Descargas:

 

Como siempre tenéis las descargas en:

- GitHub

- Nuget

Y proximamente en CodePlex.

 

Saludos, y como siempre si me dais FeedBack Genial!

Published 30/1/2012 11:03 por Javier Torrecilla
Archivado en: ,,,,,
Comparte este post:
http://geeks.ms/blogs/jtorrecilla/archive/2012/01/30/orapoco-update-2.aspx

Comentarios

# re: ORAPOCO: Update 2

Muy buenas!

Creo que ya te lo he dicho, pero buena iniciativa! ;-)

No se si me termina de convencer la idea de una clase Base (además perdona pero creo que el nombre está muy mal elegido, por demasiado genérico. Algo como OracleEntityBase sería mejor).

Digo que no me convence, porque rompe un poco con la filosofía de entidades POCO y persistence ignorance.

De hecho, yo lo que intentaría añadir a ORAPOCO, es un mecanismo de configuración para mapear mis entidades sin tener que usar atributos (algo como Fluent NHibernate o EF code first usando EntityCodeTypeConfiguration<>). Eso me permitiría tener mis entidades totalmente POCO.

Un saludo!

Monday, January 30, 2012 12:30 PM por Eduard Tomàs i Avellana

# re: ORAPOCO: Update 2

Muchas gracias por Comentar Eduard.

La verdad es que lo del nombre "Base" no es muy adecuado jeje.

Me ha gustado la idea del mecanismo de mapeo :D

Monday, January 30, 2012 12:46 PM por Javier Torrecilla

# re: ORAPOCO: Update 2

Hola,

Una duda, ¿la clase base la tienes subida a github? No la encuentro por ningún sitio y seguro que es porque no estoy mirando donde debo.

Por otra parte, estoy con Eduard en que tener una clase base es poco "POCO" :-)

Un saludo y enhorabuena por la gran acogida que está teniendo el proyecto.

Monday, January 30, 2012 5:06 PM por Juanma

# re: ORAPOCO: Update 2

Hola Juanma y Muchas Gracias.

Es cierto me acabo de dar cuenta que no he subido la clase Base... #FAIL

Pero estoy trabajando la idea que comentaba Eduard de la Configuración y Fluent, así que espero tener resultados buenos en unos días...

Tuesday, January 31, 2012 7:54 AM por Javier Torrecilla

# ORAPOCO: V2.0

Introducción Bueno, como habreis podido notar ando creando un ORM “ligero” para trabajar

Wednesday, February 1, 2012 1:03 PM por El blog de Javier Torrecilla

# #ORAPOCO: V2.1

Continuando con mi particular cruzada de crear un Mini ORM para trabajar con ORACLE, publico una nueva

Wednesday, February 15, 2012 10:28 AM por El blog de Javier Torrecilla