Pregunta

Estoy trabajando en una característica del producto que permitirá al usuario exportar datos de una base de datos SQL CE en una copia de mi aplicación y volver a importarlos a SQL CE en el otro extremo.Estos datos no son tablas completas, sino el resultado de consultas.

Esperaba aprovechar la serialización basada en XML incorporada de .net como en DataTable.WriteXML.Pero ninguno de los métodos para ejecutar consultas contra un SqlCeCommand proporciona una forma obvia de serializar a XML o extraer una tabla de datos, que podría proporcionar el método.

¿Se me escapa algo?¿Tengo que escribir mis propios métodos de serialización-deserialización o hay una forma integrada?

¿Fue útil?

Solución

Suponiendo que cmd es su SqlCeCommand....

using(var dr = cmd.ExecuteReader())
{
   DataSet ds = new DataSet();
   DataTable dt = ds.Tables.Add();
   dt.Load(dr);
   ds.WriteXML(...);
}

Otros consejos

Quieres crear un SqlCeDataAdapter y usarlo .Fill() un conjunto de datos.Luego serialice todo el conjunto de datos a través de su .WriteXml() método.

Creo que podría recuperar los datos en un DataSet, llamar a WriteXML en él y luego, en el otro extremo, declarar un nuevo DataSet y llamar a ReadXML en él.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top