Deployment de proyectos Web con Visual Studio 2005

Microsoft posee un addin para Visual Studio 2005 que nos permite crear proyectos de deployment para sitios web.

Entre las características que agrega este addin podemos encontrar:

  • Mayor control sobre los nombes de ensambaldos 
  • Pre y post procesamiento personalizado
  • Posibilidad de modificar archivos y directorios en el build
  • Capacidad para modificar valores del web.config de acuerdo a la configuracion del build.

Descarga del addin y articulo en MSDN:

Como obtener una ISession de NHibernate en ActiveRecord

En ocasiones usando ActiveRecord necesitamos una ISession para acceder directamente a funcionalidad de NHibernate. El siguiente código nos da dicha posibilidad
ISessionFactoryHolder sessionHolder = ActiveRecordMediator.GetSessionFactoryHolder();
ISession _session = sessionHolder.CreateSession(typeof (Entidad));

Proyecciones con ActiveRecord / NHibernate

Las proyecciones nos permiten devolver ciertas propiedades de un objeto. De esta manera, podemos crear DTO a partir de clases de nuestro dominio.

Algunos enlaces:

Links sobre consultas con Criteria en NHibernate

NHibernate Alpha 2.0 disponible

En el siguiente post de Ayende hay abundante informacion sobre la nueva version disponible de NHibernate.

Segun comentan el estado de Alpha es debido a la gran cantidad de funciones adicionales, pero que es usado en produccion.

Tambien en InfoQ publicarion un articulo al respecto

Seminario sobre NHibernate 20 y 21 de febrero de 2008, Buenos Aires

Los días 20 y 21 de febrero de 2008, se realizó en Buenos Aires, un seminario sobre NHibernate, dictado por Fabio Maulo y Dario Quintana.

Con una concurrencia que yo calculo en unas 120 personas, en la primera jornada, se expusieron conceptos básicos sobre NHibernate y ORM para luego pasar a información mas detallada sobre la utilización de este framework de persistencia.

El segundo día se dedico a la muestra de código sobre todos los conceptos anteriores.

Me pareció muy interesante la demostración de características que actualmente están siendo implementadas en la versión 2 de NHibernate y que ya pueden ser utilizadas, así como la gran cantidad de información practica, recursos, formas recomendadas de trabajar y cual es el futuro de la herramienta.

ORM o No ORM

Pasando un poco a otro tema, no deja de llamarme la atención la gran cantidad de gente que concurrió para tener un primer contacto con NHibernate. Posiblemente padeciendo el “síndrome de lo obvio” que comenta Fabio Maulo, para mi no existe otra manera de desarrollar aplicaciones que no sea utilizando un framework de persistencia (obviamente cuando necesito persistencia).

Pienso que podría ser de gran ayuda para incorporar más “fieles a la causa” la difusión de documentación especifica sobre la utilización de frameworks de persistencia.

No dudo de que existe amplia información al respecto, para cualquiera que desee encontrarla, solo que la gente que ya viene trabajando con ORM, cuando tiene contacto con los “no creyentes” debe dedicar una gran cantidad de trabajo en la “evangelización” de los mismos, y no veo un esfuerzo consciente de la comunidad NHibernate en ese sentido (seguramente este tema será base de futuros posts).

La utilización de términos “religiosos” no es caprichosa, en discusiones con gente No ORM ;) el tema parece ser más una cuestión de fe que de desarrollar aplicaciones en la mejor forma posible.

Me gustaría mucho conocer sus comentarios y experiencias sobre este tema …

Valor minimo y maximo de una fecha para MS SQL Server en una variable DateTime en .Net 2.0

El valor mínimo y maximo que puede utilizarse en una variable que posteriormente se va a enviar a un campo del tipo DateTime de MS SQL Server se puede obtener de la siguiente manera:

Visual Basic
Dim _min As System.DateTime = New System.DateTime(System.Data.SqlTypes.SqlDateTime.MinValue.Value.Ticks)
Dim _max As System.DateTime = New System.DateTime(System.Data.SqlTypes.SqlDateTime.MaxValue.Value.Ticks)

CSharp
System.DateTime _min = new System.DateTime(System.Data.SqlTypes.SqlDateTime.MinValue.Value.Ticks);
System.DateTime _max = new System.DateTime(System.Data.SqlTypes.SqlDateTime.MinValue.Value.Ticks);

Instalar version reducida de Vista

La utilidad VLite nos permitirá realizar instalaciones de Windows Vista seleccionando solo los componentes deseados, lo que nos deja con un sistema operativo que utiliza menos recursos y con mejores tiempos de respuesta.

 La última version disponible en su sitio web es la VLite 1.1 Final

Deshabilitar UAC

Desarrollando con Visual Studio 2005 en Vista (y en mi caso particular para el uso general del sistema operativo) me resulta bastante incomodo estar constantemente respondiendo a las solicitudes de UAC, además, ciertas funcionalidades quedan afectadas segun la cuenta bajo la cual fueron incialmente ejecutadas, como el comando SUBST.

Buscando la manera de desactivar el UAC, encontre estas dos entradas (en ingles) que explican como hacerlo

Windows Vista Secret #4: Disabling UAC

Don’t disable Vista UAC system-wide; disable Vista UAC per application