Modos de cargar y usar XML y XSD

1
1094

Es importante para todo programador saber persistir y leer archivos XML con o sin sus XSD, porque tiene importancia para muchas aplicaciones.

Un ejemplo de esto son las aplicaciones para Pocket PC, ya que muchas veces ocupamos que estos dispositivos móviles estén desconectados de las bases de datos pero aún así­ podamos trabajar en las aplicaciones, persistiendo datos localmente para luego sincronizar cambios con la base de datos.

Esto también aplica para aplicaciones Windows en las cuales ocupamos que los usuarios puedan trabajar desconectados, ya sean vendedores o cualquier ejecutivo que viaje con su laptop y no siempre pueda tener conexión directa con la LAN de la empresa para poder trabajar.

Posteriormente estaré publicando artí­culos sobre varios modelos para poder hacer que las aplicaciones de nosotros funcionen en modo “offline” y “online”. Pero por el momento es importante que sepamos cómo cargar y persistir de diferentes formas los XML y sus esquemas (XSD).

Cada uno de los siguientes fragmentos de código están en VB.NET, vamos a suponer q cada fragmento está dentro el Evento Click de un botón, que es el que dispara el evento. También suponemos que el objeto ds es un DataSet y el objeto dg1 es un DataGrid, solo para desplegar los resultados de la carga de los XML.

Cargar XSD

El siguiente fragmento explica como cargar en el dataset un esquema (XSD) desde un archivo:

Tenemos un OpenFileDialog el cual nos muestra la ruta seleccionada por el usuario donde se encuentra el archivo XML a cargar, desde el dataset ds llamamos al método ReadXmlSchema y le pasamos por parámetro la ruta del archivo a cargar.

El siguiente ejemplo es parecido al anterior pero en vez de cargar el esquema desde un archivo lo hacemos desde un StreamReader:

DataSet a XSD

Ahora vamos a aprender cómo persistir al disco un esquema sacado de un dataset por medio de un StreamWriter:

Salvando XML con propiedades

A continuación vamos a aprender a persistir un archivo XML pero guardando todas sus propiedades, ya sea si una fila es tipo inserted, update o deleted, para hacer esto guardamos el xml con una propiedad especial que se llama DiffGram, esto nos permite que no solo se guarde el XML sino que también se guarden las propiedades correspondientes a cada fila de información, ya sea que haya sido insertadas, modificadas o eliminadas.

Cargando XML

El siguiente ejemplo nos muestra cómo cargar un XML y un XSD, para así aplicarle ese esquema al XML y cargarlo en el dataset:


El siguiente es un ejemplo muy simple de cómo persistir un dataset, pero con este método solo guardamos la información en un XML obviando las propiedades que se pueden guardar utilizando el modo DiffGram, anteriormente mencionado:


El último ejemplo es parecido al de arriba pero solo q en vez de guardar el XML guardamos el XSD:


Con eso los dejo, hay muchas otras formas de hacerlo, pero eso sirve como base para cualquier proyecto con XML.

 

1 Comentario

Dejar respuesta

Please enter your comment!
Please enter your name here

Protected with IP Blacklist CloudIP Blacklist Cloud