Intento de Generación de Código con AjGenesis
Estuve varios días alejado, porque estuve acostumbrándome a la metodología de trabajo, de desarrollo, y demás factores al nuevo cliente, y haciendo pruebas para cambiar un generador de código que tenían con CodeDom a AjGenesis.
La Arquitectura que tenemos, no sé si llamarla “Arquitectura”, solo tenemos un ServiceLocator, que tenemos todas mapeadas las entidades de spring.net, con una implementación de Ado para cada una, así es posible en usarla en distintos motores. Estas entidades son más un mapeo de la tabla, no posee ni conceptos de hijos, nietos ni nada similar, cosa que voy a intentar madurar a futuro, pero ya la próxima voy a estar implementando nhybernate.
http://swap.synnax.net/download.php?synx.5307-Alpha0.2.zip
Una vez instalado, van a la carpeta C:\Projects\Tools (No modifiquen el path en la instalación)

Ejecutamos:

Nos abre nuestro gestor de proyectos

Podemos agregar nuevas entidades a los existen, tanto la eliminación de Proyectos y entidades, se hace a mano por ahora.
Generemos un nuevo proyecto

Ingresamos los datos

En directory, no generar directorios con espacios, lo mismo sucede con el NameSpace. La Connecion String, también tiene que ser válida, así se conecta a base de datos y mapea.
Y el provider, en esta versión tiene implementadno Sql Server y Oracle (el tema que el template que deje es el que uso en el cliente, y hay ciertas referencias que no van a andar, pero modificando el helper ya estaria, prometo hacer un template neutro para la semana que viene)
Aceptamos, retornamos en la página anterior, y presionamos botón derecho sobre “WebCTC” (si nos basamos en los datos que ingrese anteriormente).

Vamos a Ver Entidades, nos va a aparecer un listado vacio

Vamos a la opción de “Crear”, los literales están mal.. ya que es una versión muy alfa..

Nos aparece las tablas a mapear, yo voy a mapear un par de Tablas, y le indico que me elimine el prefijo “AG_” (Así me genera la class Contractor, en vez de Ag_contractor), clickeamos en “Generar”.
Ya nos aparece en la lista de entidades

Si hacen doble clic sobre los elementos les va a levantar el Xml

Cerramos la ventana, volvemos a la ventana anterior
Le doy en Generar código a CTC


Abre una consola que ejecuta, el AjGenesis para la generación del código con mis entidades, y nant para compilar todo. Si todo salió bien van a ver un Build Succeded.
Presionan una tecla, y les va a abrir la carpeta de generación:

En la carpeta Assemblys, están todas las dll’s generadas.
Default.build, es la task de Nant.
Como verán, tiene spring, genera una capa de dao, y una implementación de sqlserver y otra de oracle, aunque la de oracle no esta implementada… solo es una copia del Sql server.
En la capa de Services, ya mapea los ojos para spring


Y también nos genero un proyecto de prueba llamado WebExample
Van A ver que me genera aspx ({ENTIDAD}_List.aspx) y llama al Service Locator

Es un ejemplo muy simple, pero nos deja ver si anda todo bien, levanto el proyecto y ejecuto alguno de los aspx

Y Listo, esta andando…
Al menos esto, yo ya le di uso práctico y lo use para un desarrollo, a medida que lo vaya usando, seguro que surgirán numerosos cambios



































