miércoles, 24 de junio de 2009

Una demo de la gran 7!!



¡ESTA ES TU OPORTUNIDAD PARA DESAFIAR A PONICKE!


En tan solo tres pasos podés convertirte en el ganador del desafío. Solo necesitás un buen nivel de conocimiento del producto, concentración y creatividad.

1. Descargá gratis en tu PC Windows 7 RC y evaluá la versión preliminar del software.
2. Grabá y enviá tu Demo.
3. Sumá votos del público, todos los comentarios ayudarán a convencer al jurado de que tu Demo es la mejor.

¡Hay en juego USD1000 en American Express Travelers Cheques, 2 Netbooks Asus EEE y tu oportunidad para hacer famosa tu Demo en los Newsletters, Sitios Web y Eventos de Microsoft!

Más info y las bases y condiciones aquí.

sábado, 13 de junio de 2009

BLOGS AMIGOS

No estamos solos!!! Las charlas, fiestas de instalaciones y demás son producto del esfuerzo de los miembros de estas 2 celulas (ademas de los Berries). No dejen de visitarnos. Cuidense!!!

http://teamdjnet.blogspot.com/
http://jujuyaspnet.blogspot.com/

CHARLA.NET

Hola a todos, gracias por asistir a la charla de .NET realizada, para aquellos quienes no pudieron asistir y desean el material para estudiar y practicar, lo pueden obtener en esta dirección.
http://cid-517f7346dcfb7399.skydrive.live.com/browse.aspx/.Public/CHARLA.NET?uc=1
SALUDOS y GRACIAS!!!!

TRANSACCIONES CON LINQ

Hola a todos, les queria mostrar la forma en que pueden trabajar con transacciones en LINQ, si bien las mismas trabajan en forma implicita, la carga de un encabezado y detalles puede tornarse un martirio. En fin.... aqui tienen el código, lo probe y funciona muy bien. Saludos!!!!

//en este caso "Conexion" es una instancia de mi DataContext, mi relacion de LINQ con mi BD
//trabajemos con transacciones...
DbTransaction ts = null;
try
{
Conexion.Connection.Open();
ts = Conexion.Connection.BeginTransaction();
Conexion.Transaction = ts;
//empecemos a grabar las dos tablas ENCABEZADO y DETALLES
Encabezado.NombreEncabezado = NombreEncabezado;
Conexion.lnqEncabezado.InsertOnSubmit(Encabezado);
Conexion.SubmitChanges();
//haciendo esto ya podemos trabajar con la clave que se crea en el encabezado
//para usarla como foranea en los detalles...
//si tienen muchos detalles pueden usar un foreach... por ahora supongamos que solo
// tenemos un detalle
Detalles.Cantidad = cantidad;
Detalles.CodigoEncabezado = Encabezado.CodigoEncabezado;
.....
Conexion.lnqDetalles.InsertOnSubmit(Detalles);
Conexion.SubmitChanges();
ts.Commit();
}
catch (Exception ex)
{
ts.Rollback();
}
finally
{
Conexion.Connection.Close();
}