LINQ, Visual Basic 2008 y XML
LINQ to XML (L2XML)
Continúo escribiendo ejemplos de breve introducción a LINQ, y en este caso le llega el turno a LINQ to XML.
Antes de comenzar, hago un recordatorio de algunos de los enlaces de interés que he publicado sobre LINQ:
Información general sobre LINQ
LINQ to Objects
Una vez hecho esto, comenzaremos ya con este ejemplo.
Lo que vamos a hacer, es trabajar a partir de un documento XML que vamos a cargar en memoria para trabajar con sus datos.
En sí es un ejemplo muy sencillo que nos abrirá la puerta de trabajo con LINQ to XML.
En primer lugar, contaremos con un documento XML al que he llamado Documento.xml y que contendrá la siguiente información:
<?xml version=«1.0«?> <datosGenerales> <datosPersona> <nombre>Fernando</nombre> <edad>18</edad> </datosPersona> <datosPersona> <nombre>Rosa</nombre> <edad>17</edad> </datosPersona> <datosPersona> <nombre>Carlos</nombre> <edad>21</edad> </datosPersona> </datosGenerales> |
Partiendo de este documento XML, vamos a aprovechar la base de los ejemplos anteriores de LINQ puestos al principio de esta entrada, y vamos a insertar un control Button en el formulario Windows de ejemplo.
Finalmente, vamos a escribir el siguiente código de aplicación:
Public Class MainForm Private Sub btnThirdTest_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnThirdTest.Click ‘ LINQ to XML ‘ Creamos una fuente de datos a partir de un documento xml Dim documento As XDocument = XDocument.Load(«C:Documento.xml») ‘ Declaramos una variable para obtener los datos del ‘ documento XML que cumplen la condiciSql programada Dim personasSeleccionadas = From seleccion In documento.Descendants(«datosPersona») Where seleccion.Element(«nombre»).Value Like «??r*» Select seleccion.Element(«nombre»).Value ‘ Declaramos una variable para obtener el resultado Dim resultadoObtenido As String = «» ‘ Recorremos los resultados de la condición Sql For Each elemento In personasSeleccionadas resultadoObtenido &= elemento & vbCrLf Next ‘ Mostramos el resultado final MessageBox.Show(resultadoObtenido) End Sub End Class |
Este ejemplo en ejecución, dará como resultado los valores Fernando y Carlos del documento XML.
Como vemos aquí, trabajar con documentos XML, cargarlos y trabajar con LINQ y sus datos es una tarea muy sencilla.
3 Responsesso far
LINQ to DataSet (L2DataSet) Resumen general de lo publicado sobre LINQ hasta el momento: Información
LINQ to Entities (L2E) Resumen general de lo publicado sobre LINQ hasta el momento: Información general
LINQ to Entities (L2E) Resumen general de lo publicado sobre LINQ hasta el momento: Información general