Empezando con LINQ y VB 2008 - Jorge Serrano - MVP Visual Developer - Visual Basic

Empezando con LINQ y VB 2008

Primera pregunta fácil... ¿qué significa LINQ?. Primera respuesta fácil, Language Integrated Queries. Bien,... ya sabemos algo.

Segunda pregunta fácil... ¿dónde se encuentra LINQ?. Segunda respuesta fácil, en .NET Framework 3.5, que es el Framework que acompaña a Visual Studio 2008,... bien, ahora sabemos un poquitín más.

Tercera pregunta fácil... ¿qué Software necesito para poder desarrollar una aplicación con LINQ?. Tercera respuesta fácil, indudablemente Microsoft .NET Framework 3.5 y luego un entorno de desarrollo rápido como lo es Visual Studio 2008 y que soporta Microsoft .NET Framework 3.5.

Cuarta pregunta fácil... ¿con qué lenguaje puedo desarrollar mi primer ejemplo con LINQ?. Cuarta respuesta fácil, salvo sorpresas mayúsculas con cualquier lenguaje de .NET con soporte Microsoft .NET Framework 3.5.

Quinta pregunta fácil... ¿y qué se supone que puedo hacer con LINQ?. Quinta respuesta fácil, LINQ añade el concepto o conceptos de sentencias con todos los tipos de datos de una aplicación permitiéndonos navegar y seleccionar los datos como si estuviéramos conectados directamente a una fuente de datos. La idea principal es la de poder realizar funciones de consulta de datos (XML, colecciones y objetos, bases de datos, etc) de una forma integrada. Sin embargo, no podemos hacer cualquier cosa que se nos ocurra, de hecho no podemos por ejemplo ejecutar instrucciones Update, Delete, Insert o Create.

Y con todo esto, nos entran unas ganas de probar LINQ que no podemos más... así que siempre y en este punto, aparece una pregunta más... ¿cómo hacer nuestro primer ejemplo con LINQ?.

Pues eso es justamente lo que haremos a continuación.

LINQ to Object (L2Objects)

Iniciaremos un proyecto nuevo en Visual Studio 2008 y en concreto una aplicación Windows utilizando para ello Visual Basic 2008 (Visual Basic 9.0).

Dentro de nuestro formulario Windows, insertaremos un control Button.

Y finalmente escribiremos el siguiente código de nuestra aplicación:

Public Class MainForm
   ' Declaramos una matriz con los meses del a
   Private meses() As String = {"Enero""Febrero""Marzo""Abril", _
                                
"Mayo""Junio""Julio""Agosto", _
                                
"Septiembre""Octubre", _
                                
"Noviembre""Diciembre"}

   
Private Sub btnFirstTest_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnFirstTest.Click
      
' Declaramos una variable para obtener de la matriz de meses del a
      ' los meses que cumplen la condiciSql programada
      Dim mesesSeleccionados = From seleccion In meses Where seleccion Like "?e*" Select seleccion
      ' Declaramos una variable para obtener el resultado
      Dim resultadoObtenido As String = ""
 
      ' Recorremos los resultados de la condiciSql
      For Each seleccion In mesesSeleccionados
         resultadoObtenido &= seleccion & vbCrLf
      
Next
 
      ' Mostramos el resultado final
      MessageBox.Show(resultadoObtenido)
   
End Sub

End
 Class

Como podemos observar en este ejemplo, lo primero que hacemos es declarar una matriz y a ella la asignamos un conjunto de valores para a modo de ejemplo poder jugar con ellos.

Posteriormente, lo que hacemos es obtener los valores resultantes después de ejecutar la sentencia Sql correspondiente. Aquí nos fijamos en que la selección la realizamos por medio de Like "?e*" o lo que es lo mismo, que el segundo carácter sea e y el resto lo que sea.

La ejecución de este código nos deberá devolver como salida Febrero y Septiembre.

Sirva este primer ejemplo para aprender lo básico e inicial de LINQ y para a partir de una colección de datos (que en este caso es una matriz), realizar una búsqueda sobre estos datos y actuar en consecuencia.

¿Fácil verdad?.

Published 11/12/2007 19:00 por Jorge Serrano
Comparte este post:

Comentarios

Wednesday, December 12, 2007 12:39 PM por Daniel Agüero

# re: Empezando con LINQ y VB 2008

Les felicito sinceramente.

Me pareció muy fácil, tal como dicen ustedes.

Me interesa aprender cada día más, por fgavor indicarme como iniciar el aprendizaje.

Gracias.

Saludos.

Wednesday, December 12, 2007 12:40 PM por Daniel Agüero

# re: Empezando con LINQ y VB 2008

Realmente muy interesante.

Les felicito de verdad.

Saludos.

Sunday, December 23, 2007 11:02 AM por El blog de Jorge

# LINQ, Visual Basic 2008 y DataSet

LINQ to DataSet (L2DataSet) Resumen general de lo publicado sobre LINQ hasta el momento: Información

Friday, January 25, 2008 7:32 AM por El blog de Jorge

# LINQ to Entities y Visual Basic 2008 - Parte 1

LINQ to Entities (L2E) Resumen general de lo publicado sobre LINQ hasta el momento: Información general

Monday, April 28, 2008 4:11 AM por caca

# re: Empezando con LINQ y VB 2008

una cagada

Friday, May 02, 2008 11:31 PM por molle

# re: Empezando con LINQ y VB 2008

Hola bueno eh probado el linq y me parece facil e interesante de aprender mas. Mi pregunta es cargo mi datagrid con una consulta y despues seleccione un item quisiera saber como puedo  guardar esos datos seleccionados en una base de datos

Wednesday, July 02, 2008 7:55 PM por macgyver

# re: Empezando con LINQ y VB 2008

no sea tan playo para escribir, sea un poquito mas hombre y deje de poner esas culioladas

Wednesday, September 10, 2008 5:22 AM por Alan

# re: Empezando con LINQ y VB 2008

Curioso pero si mesesSeleccionados se le tratara como recordset y seleccion como fields de un recordset devuelto segun el criterio del conjunto de datos filtrado ...q hay de nuevo en eso? acaso todo este rollo es unicamente por q puedes hacer un select de un arreglo?

Wednesday, October 15, 2008 1:23 AM por luis alberto

# re: Empezando con LINQ y VB 2008

hola, me parece excelente este ejemplo y muy facil, funcional y de aplicar, tengo una duda, no pude aplicar este ejemplo al tratar de modificarlo para una base de datos, cuando quiero que despliegue los resultados en un datagrisview, no sale error pero tampoco datos, algo cambia en las sentencias para aplicarlas a las bases de datos, gracias

Friday, August 28, 2009 7:45 PM por luis

# re: Empezando con LINQ y VB 2008

hola amigo, soy de peru y estoy comenzando en el mundo de la programacion ya que en estos años de mi carrera mas me centre en la parte del hardware, es por ello espero su ayuda en cualquier inquietud que tenga, gracias...

Wednesday, December 16, 2009 12:46 AM por ar

# re: Empezando con LINQ y VB 2008

bueno gracias