Lilypie Primer PicLilypie Primer Ticker

lunes, 25 de febrero de 2008

NHibernate.Timestamp != SQLServer.Timestamp

Al intentar utilizar el control de concurrencia, mediante las etiquetas <timestamp> o <version> de NHibernate junto con el tipo Timestamp de SQL Server, nos encontramos con un mensaje como este:

"Could not cast the value in field ts_times4_ to the Type TimestampType. Please check to make sure that the mapping is correct and that your DataProvider supports this Data Type."

debido a que el tipo Timestamp de SQL Server es recibido como un byte[] en el .NET Framework y no es compatible con los tipos que NHibernate usa para el control de las versiones. (Aunque la documentación de NHibernate diga lo contrario)

Luego de algunas horas intentando resolver este problema encontré un artículo en CodeProject q resuelve el problema.

http://www.codeproject.com/KB/dotnet/OptLocking_PrefixTable.aspx

Ojala les sea de utilidad

jueves, 21 de febrero de 2008

Herramientas para GMail en MSDN CodeGallery

Se publicó en MSDN CodeGallery una libreria de clases muy sencillas, pero q nos pueden ahorrar algún tiempo, que nos permiten integrar nuestras aplicaciones .NET con el excelente servicio de GMail.

Pueden descargar el código desde aqui

Saludos

martes, 19 de febrero de 2008

NHibernate: Intellisense para archivos de configuracion

Un tip para lograr soporte de Intellisense para los archivos de configuración y mapeo (mapping files) de NHibernate

Simplemente debemos copiar los archivos [NhibernateInstallDir]\src\NHibernate\*.xsd en:

[VSInstallDir]\Xml\Schemas -- si estamos usando VS2005, o

[VSInstallDir]\Common7\Packages\schemas\xml -- si aun estamos usando VS2003

Espero les sea de utilidad a la hora de escribir sus archivos xml a mano :)