Aprende LINQ de forma fácil y sencilla

Ahora que formalmente ya salió al mercado Visual Studio 2008 y que tiene características muy novedosas como LINQ, entre las más sobresalientes, este post está dedicado para todos quienes estén interesados en estudiar, testear o simplemente aprender las sentencias LINQ antes de realizarlo en VS2008, existe una herramienta que permite hacer todo esto, que es libre y que no necesita instalación, el único requisito previo para ejecutar esta herramienta es tener instalado el .Net Framework 3.5 y listo a usarla, esta herramienta se llama LINQPad que la puedes descargar aqui.

LINQPad Total
Esta herramienta se divide en 4 secciones:
Conexiones
LINQPad Conection

En la parte superior izquierda de LINQPad existe las opciones de conectarse a una base de datos SQL Server ocasionalmente o permanentemente como en el server explorer de Visual Studio. Además a través de la conexión se puede navegar entre los objetos de la base: tablas, funciones, procedimientos almacenados, vistas, etc.

Ejemplos y Sentencias

LINQPad Examples

La primera opción de la parte inferior izquierda se encuentra un panel con las sentencias que se han desarrollado y guardado, y junto a esto existe un sección donde se encuentran más de 200 ejemplos disponibles para aprender LINQ. La sección de ejemplos se divide en una breve introducción de lo que es LINQPad y luego ejemplos desarrollados en C# divido en secciones de LINQ Queries, LINQ Operators, LINQ to XML, LINQ Regular Expressions. Parece que en esta versión no se incluyen ejemplos para Visual Basic.

Consultas y Navegación

LINQPad Consultas

En la parte superior derecha de la herramienta se encuentra la sección de edición de las consultas, donde podremos ejecutar o detener una consulta, seleccionar la conexión que debe usar la sentencia que estamos desarrollando, además se elige el lenguaje en el que se desea escribir la consulta. Es importante mencionar que tiene soporte para C# como para Visual Basic, además puede ser útil también el compilador de sentencias SQL. Existe también alertas de error de sintaxis de las consultas en la parte superior de esta sección.

Resultados

LINQPad Results

En esta sección se muestran los resultados fruto de las consultas ejecutadas, en ella podemos encontrar el resultapo presentado en un grid. LINQ facilita en su sintaxis manejar lambda, por lo que una vez que se haya escrito y verificado el resultado de la consulta se puede generar la sintaxis de la consulta en expresiones lambda. Y la opción que está junto a lambda es SQL, al ingresar en esta opción se genera código SQL de la consulta realizada a una base de datos.

En la imagen anterior en la sección de resultados se puede observar la conversión a una sentencia lambda. En fin son varias las cosas que podemos realizar a través de esta herramienta, inclusive se pueden agregar assemblies. Entonces que esperas para ponerte a estudiar o simplemente testear tus consultas de forma sencilla y rápida. Les dejo con la imagen total de la herramienta.

Anuncios

LINQ con varios orígenes de datos

Una vez superado unos inconvenientes, he podido retomar un poco esta parte VS2008 y fundamentalmente LINQ, espero este post sea de su utilidad.

En un post anterior de LINQ había mostrado una demo 3 capas con SQLServer y unas pruebas con objetos y XML a lo cual LINQ ha pasado las pruebas.

Pretendía a través de este demo realizar una conexíon con 2 distintos orígenes de datos (SQL y Oracle) e intentar mapear tablas tanto de SQL como de Oracle, sin embargo, con las tablas de Oracle esto no es posible. A continuación detallo todos los pasos que se deben seguir para conectarse a una base oracle, con el Server Explorer. Tomar en cuenta que se debe instalar la base de datos Oracle y además el ODP (Oracle Data Provider) Net para que se pueda conectar.

  1. Seleccionar Oracle Database
  2. LINQ Multisource

  3. Ingresar el SID del servidor y el usuario y password de la base.
  4. LINQ Multisource 2
  5. Finalmente verificar que se haya conectado exitosamente.
  6. A continuación podemos ver el error resultante cuando pretendemos arrastrar una tabla Oracle en un dbml
  7. LINQ Multisource 3

En vista de que la intención inicial de la demo no fue posible, ahora intentaré al menos consultar la data de las dos bases. En Oracle están los datos de país de origen, tipo de teléfono, estado civil, etc. mientras que en SQL se encuentra la información de los empleados, por lo que para presentar el país de origen de los empleados es necesario hacer una consulta de las dos bases.

A través de un dataadapter consigo poner la data de la base Oracle en un Dataset y con el dbml de SQL intento realizar la consulta, pero nuevamente no es posible, imagino que no es posible utilizar sentencias LINQ con objetos diferentes (Dataset y dbmls), así que ya lo saben LINQ solo con objetos del mismo tipo.

El único camino que queda es mapear la data del dbml a un dataset tipificado con la estructura de las tablas de SQL e intentar realizar la consulta.

Efectivamente ese fue el mejor camino para presentar la data de dos data sources diferentes, se que la interfaz del resultado no es lo mejor que se puede hacer, pero para efectos de esta demo, considero que está bien, cumple con lo que quería mostrar.

LINQ Multisource Resultado

Además de los datos del empleado, se ha consultado los teléfonos para lo cual en el evento RowDataBound se han consultado y presentado en un grid agregado previamente como ItemTemplate. Bueno aqui tienen el código (recuerden renombrar el archivo a .zip) para que lo vean, los requerimientos para correrlo son: VS2008, SQL2005, Oracle XE 11g, ODP Net, deben crear las tablas cuyas estructuras pueden encontrar en los DataSets y la data se encuentra en la página de resultados.

A propósito de Seguridad

Existen en la actualidad la imperiosa necesidad de cuidar el bien mas preciado de las empresas que es la información que poseen de forma que ésta no caiga en personas que puedan significar un peligro en la organización, es así que existen varias posibilidades en el mercado, cuyo esfuerzo en recursos es siempre alto.

A pesar de todo ello, de las políticas que se ingrese en las compañías somos los trabajadores de las mismas los que hacemos que una norma, política o regla sea un éxito o simplemente un en enunciado más. A continuación irónicamente describiré que generalmente nos pasa cuando por algún motivo tenemos que soporte o simplemente ayudar a un usuario con un sistema.

Cuando hemos llegado al lugar del “siniestro” aún se respira un aire pesado, estresado y con nuestro arribo se ve claramente el brillo (de SOS y desesperación, mezclado con esperanza) en los ojos de las personas a las que vamos a ayudar. Hasta aquí todo normal verdad, pero luego cuando le solicitas que ingrese al sistema pues ocurre lo siguiente, lo primero que hacen es buscar ese “papelito de claves” donde uno encuentra, información de todo tipo (usuarios y claves de mail, de cuentas bancarias, número de tarjetas de crédito), demás está decir que dicho papelito se encuentra en un lugar con normas ISO de seguridad (bajo el teclado, pegado como notita en el monitor, en la cartera, en el cuaderno de notas). Otra forma “ingeniosa” de tener esta información es manejar un “archivo de claves” ubicado en el escritorio del computador, sin protección alguna, “porque si le pongo clave, me olvido”.

Esto es lo que comunmente nos sucede en el día a día con los usuarios que luego dicen que el sistema no es seguro, que no ha revelado las claves a nadie, etc. etc. Sin embargo, hay algo en lo que si tienen razón y es que por políticas de seguridad se debe ingresar claves distintas y con formato específico (claves que contengan letras, números y caracteres especiales), y realmente no es fácil manejar mas 5, 10 o 15 usuarios y claves dependiendo del usuario.

Tips para manejo de claves

Es de vital importancia que al seleccionar una clave utilicemos algo que podamos recordar muy fácilmente, pero que sea muy complicado de descifrar para el resto de personas, sin embargo, este ideal no siempre se puede cumplir, para lo cual podemos:

  • Cambiar algunas letras por números. Por ejemplo. “i” por “1”, “o” por “0”(cero), “e” por “3”, etc.
  • Cambiar algunas letras por cacacteres especiales. Por ejemplo: “S” por “$”, “a” por “@” , “l” por “|”, etc.
  • Cambiar algunos números por letras. Por ejemplo. viceversa del primer ejemplo.

Ese cambio de signos y números en las claves que conocemos es de gran ayuda por que de esa manera no olvidaremos la clave y además estaremos cumpliendo con la política de seguridad de los sistemas.

Entonces si la clave que manejamos es “francisco” quedaría “f&@nc1sc0”, si uso la clave “european” quedaría “3ur0pe@n”. Lo importante es mezclar estos símbolos, letras y números aleatoriamente.

PD. Finalmente recuerden que por más seguridad que se tenga, siempre existe forma de descifrarla.

Bluetooth celebra décimo aniversario

Desde sus inicios en 1998, más de 1,5 billones de productos con Bluetooth han sido distribuidos.

 

Bluetooth es una tecnología inalámbrica de redes de ámbito personal, que permite a dispositivos electrónicos conectarse entre sí inalámbricamente. Esta tecnología es recomendable cuando se desea transmitir pocos datos entre estos dispositivos ya que es más lento que Wi-Fi.

Apple ha venido fabricando computadores equipados con Bluetooth para que puedan trabajar con teclados y ratones inalámbricos, sincronizar datos con teléfonos celulares y PDAs, comunicarse con impresoras y compartir datos con otros equipos.

Bluetooth ha tenido que librar una ardua batalla con los fabricantes de computadoras, sin embargo, los fabricantes de telefonía celular han sido quienes lo han utilizado y difundido enormemente en especial para soportar el uso de auriculares inalámbricos (manos libres).

Bluetooth 2.0 aumentó el ancho de banda a tal punto que los fabricantes de dispositivos multimedia lo utilizan para sus auriculares inalámbricos.

Fuente PCWorld

Lenovo lanza Notebooks con reconocimiento facial


Lenovo presenta exclusivamente para el mercado de consumo de EEUU los modelos IdeaPad Y510 y Y710, que fueran lanzados en Asia en mayo del año anterior, a estos modelos se unirá en marzo el IdeaPad U110, una ultraportátil de 11 pulgadas, sin embargo, la empresa china espera vender en otras plazas como Francia, Rusia, Australia, Sudáfrica, India, etc.

Entre las características principales destaca un programa que reconoce los rostros de los usuarios que les permite autenticarse en la computadora y en otros programas sin necesidad de claves. Además poseen características multimedias y 4 parlantes con un subwoofer que componen el sistema Dolby Home Theater de Lenovo.

El modelo Y510 cuenta con una pantalla de 15,4″, cámara integrada de 1.3 M, mas de 250GB en disco duro y un porcesador Intel Core 2 Duo T5550 (1.83 GHz), lectograbadora de DVD, 2GB de RAM, mientras que el modelo Y710 tiene un pantalla de 17″, disco duro de 500GB, procesador Intel Core 2 Duo T9300 (2.5 GHz).

Mayores detalles aqui

Impresiones iniciales de Visual Studio 2008

Visual Studio 2008 fue recientemente liberado para los suscriptores MSDN, y pronto estará disponible para el público en general. Estos recientes acontecimientos me incentivan a mirar de cerca la última versión del IDE símbolo de Microsoft.

En esta vista general de Visual Studio 2008, empezaré por nombrar las diferentes versiones y luego me enfocaré en las nuevas características y la forma en la que el IDE le puede ayudar a ser más productivo. A continuación mis primeras impresiones de VS 2008.

Versiones de Visual Studio 2008

Existen varias Ediciones Express que ofrecen una versión reducida del IDE y focalizados en lenguajes específicos como C#, Visual Basic, and C++ así como también el Visual Web Developer Express Edition.

El siguiente paso es la versión estándar, la misma que ofrece todas las características del IDE y le permite utilizar el lenguaje de su elección.

Todo el paquete incluye herramientas de colaboración como Team System, el mismo que permite que varios desarrolladores trabajen juntos en proyectos .Net.

Visite MSDN para mayor información de las versiones.

Nuevas Características

El mayor cambio con Visual Studio 2008 es el uso del .Net Framework 3.5 y sus múltiples características nuevas como un mayor apoyo a los desarrolladores web y nuevas tecnologías como el lenguaje integrado de sentencias (LINQ, Language Integrated Query). El IDE además incluye: orientación a múltiples versiones de .Net, incremento de soporte para AJAX, integración con LINQ, y funciones para una unidad de pruebas.

Mi característica favorita del Visual Studio 2008 y por mucho es la capacidad de desarrollar aplicaciones utilizando otras versiones del .Net Framework. Esto significa que puede utilizar el nuevo IDE sin tener que actualizar a los proyectos existentes a la última versión del .NET Framework. Puede mantener estas aplicaciones mientras construye nuevas aplicaciones aprovechando las nuevas características del IDE. Es el mayor cambio de las versiones anteriores de Visual Studio, las que están obligados a versiones específicas de .NET (por ejemplo, .NET 1.x con Visual Studio 2003, .Net 2.x con Visual Studio 2005).

Esta característica es fácil de usar, la versión de .NET se selecciona de un menú desplegable cuando se va a crear un nuevo proyecto en el IDE. La lista de las plantillas disponibles cambia automáticamente de acuerdo a la versión de .Net seleccionada. Otro beneficio es que puedo usar una versión de Visual Studio en contraposición con el cambio de una diferente versión que refleje la versión de .NET que estoy usando.

Incluso si no está utilizando la última versión del .NET Framework, puede usar las nuevas características del IDE de Visual Studio 2008, independientemente de la versión de .NET elegida.

Aumentar la Productividad

Visual Studio 2008 incluye varias características que pueden ayudarle a utilizar mejor el tiempo, mientras codifica. Un buen ejemplo es el soporte de intellisense para JavaScript, que le permite obtener ayuda de la sintaxis JavaScript mientras está codificando, esto significa no más tiempo buscando libros o búsquedas en Google para obtener ayuda. Existe también mayor soporte de depuración en JavaScript, lo que hace más fácil la depuración de código del lado del cliente.

Se ha incrementado también el soporte de CSS a través de un mejor editor y un diseñador WYSIWIG que proporciona información instantánea de su trabajo. Además AJAX es ahora una parte estándar de .NET Framework con cambios que incluyen 3 nuevos controles.

Nota: Muchos de los comentarios que he leído son positivos acerca de la mejora en rendimiento de las páginas de diseño ASP.NET en Visual Studio 2008, pero no he trabajado lo suficiente en el IDE para estimar los méritos de estos comentarios.

Unidad de Pruebas

Una unidad de pruebas y VS no siempre han sido una buena combinación, pero Microsoft parece mejorar con cada versión de Visual Studio. Con Visual Studio 2008, se han añadido a la unidad de pruebas características de la edición profesional. Una nueva opción en el menú contextual (ejecutar pruebas) hace que sea más fácil de usar una vez que se haya establecido, esto le permite ejecutar una prueba con un clic del mouse. También, puede hacer clic derecho sobre la clase y ejecutar todas las pruebas en la clase.

Trabajando con Datos

Uno de los complementos más promocionados con el .Net Framework 3.5 y posteriormente por Visual Stuio0 2008 es LINQ. LINQ es un nuevo paradigma declarativo para consultar fuentes de datos de una manera coherente independientemente de la fuente de datos en memoria, SQL backend, XML, y algunos otros. LINQ es completamente extensible, así que las posibilidades son infinitas.

Tiene planes de utilizar Visual Studio 2008 pronto?

En el año que empieza, continuaré explorando varias características de VS2008 con proyectos antiguos y nuevos. Espero también resaltar mejoras adicionales para desarrollo y pruebas de aplicaciones móviles y desarrollo con Microsoft Office.

Esta pensando en utilizar esta nueva versión de VS en los próximos meses? Si ya está utilizando Visual Studio 2008, comparta sus ideas de uso y las nuevas características con la comunidad .Net.

Tomado de TechRepublic: Link

3, 2, 1 Loxa Bloggers 2007 ha empezado

Ha iniciado el evento, la logística muy bien, tenemos un buen ancho de banda, estamos los que somos, y somos los que estamos, un conjunto de apasionados que no sueltan sus macs, pcs, iphones, etc. El punto es estar aquí y contarle al mundo como nos encontramos en este mundo Web 2.0. He ubicado mi lugar estoy junto al negro carlos y ahora a contarles como avanza nuestro evento.

 

Una “monovideoconferencia” desde España y de lo poco que pude escuchar hay algo muy interesante que no siempre tenemos en cuenta, aquí lo cito “Contar las cosas no como me parece que son, sino como las personas que accedan a mi web la puedan entender”.

Ahora toma la batuta Segundo Benitez, que junto a José Sandoval asistieron al wordcamp en Buenos Aires en Octubre de este año y nos comenta las nuevas tendencias y el estado actual de los bloggeros en los que menciona la monetización de los blogs, le relación blogs-medios de comunicación, blogging corporativo, estadísticas de la blogosfera y termina mencionando que Matt (creador de wordpress), estaría encantado de venir a Loja, así que le tomamos la palabra.

Es tiempo de dar la bienvenida a alguien muy popular en la blogósfera, calu que nos va a hablar de RSS, cuyas ventajas principales es que puedo conocer si las páginas a las que usualmente accedo tienen actualizaciones o nuevos post, y ahora nos explica como suscribirnos, también nos aclara que la ventaja es que lo que necesito está centralizado.

Y ahora la super gabbycorsalas nos hablará de microblogging, que se componen de micro post de 140 caracteres al mejor estilo de los SMS, y que claro puedes microbloggear desde tu celular. Y claro como no podía faltar nos esta dando una cátedra de twitter y con razón, con la cantidad de actualizaciones que tiene.

Para continuar germania rodriguez nos hablará de gestión del conocimiento, pero antes del mundo 2.0. que entre los varios conceptos están “conocimientos colectivos apoyados en la red”, “multitudes inteligentes”. Ahora en gestion de conocimiento 1.0 basado en las tecnologías, la 2.0 se centra en crear espacios para que el conocimiento se difunda , la 3.0 para que el conocimiento se comparta, se potencie y se genere. El conocimiento es el principal recurso de las empresas y la tecnología no es todo, es solo una herramienta.

Ha llegado Juan José Puertas, el nos hablará de Creative Commons y ha dicho algo nuevo para mi y resulta que incluso las ideas que cada uno tenemos tienen sus derechos de autor. Para dar un derecho a alguien sobre las cosas que he creado se necesita de una licencia. Es bueno saber que el hecho de que algo esté en internet no es de dominio público, tan solo es de acceso público y para finalizar recordar que las licencias CC tiene 5 años.

Ahora Patricio Barrazueta nos habla del fotoblog, las pautas que nos brinda para hacerlo entre las principales estan, una foto debe decirte algo, determinar si se publica en blanco y negro o en color, tomar en cuenta la composición, determinar por tercios horizontales y verticales y además fijar el objetivo de la foto en la intersección de los mismos.

Llegó la hora de otro de los esperados en el evento Palulo que nos comentará sobre PodCasting, que es un RSS para audio, con las ventajas que mencionamos anteriormente en el RSS. Un podcast lo puedes hacer con cualquier dispositivo de audio digital y convertirlo a mp3 y los puedes alojar en blip tv, archive.org, Castpost, Podomatic, entre los más importantes. Ehhh y ahora algo interesante POdsafe, música libre con licencia CC, en los sitios magnature.com, archive.org, lamundial.net.

Rayos ahora tenemos un mal audio para la conferencia de TonNet. La mayor cantidad de producción de la blogósfera está en Japonés y es porque postean desde su celular. Algo a tomar en cuenta es poner en nuestro blog el widget de traducción a fin de que quien nos visita pueda tener una idea de lo que escribimos.

Ya casi para finalizar Eduardo Palacios nos va comentar sobre las redes de blogs, una de las características es que se tiene mas de un autor por blog, tratan temáticas especializadas y tienen contenido de calidad. Entre las redes principales tenemos weblogs SL, hipertextual, Inicio Global, Blogs Teoriza, ZetaCorp, Sweeblog. Para crear red de blogs necesitas, banda ancha, conocimientos de blogs, SEO diseño, Tarjeta de crédito o Paypal, Hosting confiable, Autores expertos, Modelo de negocios, cuenta que acepte cheques internacionales, tiempo y dedicación.

Y finalmente como no podía faltar en este evento Nelson Piedra nos detallará los Mashups y promete no demorarse mas de 5 min. Y así va a 100 km/h, son 3 pasos: sacar datos, visualizarlos y presentarlos. Lo bueno de esto es que puedo utilizar estos mashups de acuerdo a tus conveniencias. Existe una página donde puedes utilizar los mashups en http://pipes.yahoo.com.

Va finalizando el evento pero a diferencia de otros conferencia, esta ha sido uno de los eventos más interactivos, nada aburridos que ha concentrado varias personas apasionadas por la cultura libre, web 2.0, bloggs y ahora se viene la mejor parte el compartir con unas cervezas. A este post le agregaré luego un par de fotografías con los posters y con los asistentes.

Actualización

@jhulius en Loxa Bloggers 2007

Comparto el poster con el cual este blog se hizo presente en el Loxa Bloggers 2007

Para cerrar este post, la foto del evento (Tomada del blog de dormount) .

Loxa Bloggers 2007 Foto Oficial

Con esto si cierro este post y las actualizaciones, será hasta un nuevo evento blogger al que tenga la oportunidad de asistir.