Pergunta

Estou trabalhando em um recurso de produto que permitirá ao usuário exportar dados de um banco de dados SQL CE em uma cópia do meu aplicativo e reimportá-los para o SQL CE na outra extremidade.Esses dados não são tabelas inteiras, mas sim o resultado de consultas.

Eu esperava aproveitar as vantagens da serialização baseada em XML integrada do .net, como em DataTable.WriteXML.Porém, nenhum dos métodos para executar consultas em um SqlCeCommand fornece uma maneira óbvia de serializar para XML ou extrair um DataTable, que poderia fornecer o método.

Tem algo que estou perdendo?Preciso escrever meus próprios métodos de serialização-desserialização ou existe uma maneira integrada.

Foi útil?

Solução

Supondo que cmd seja seu SqlCeCommand....

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

Outras dicas

Você deseja criar um SqlCeDataAdapter e usá-lo .Fill() um conjunto de dados.Em seguida, serialize todo o conjunto de dados por meio dele .WriteXml() método.

Eu acho que você poderia recuperar os dados para um DataSet, chamar WriteXML nele e, na outra extremidade, declarar um novo DataSet e chamar ReadXML nele.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top