none
Alterar <NewDataSet> de arquivo XML em WebService RRS feed

  • Pergunta

  • Ola,

    Ja vi em alguns post como alterar o nome do root do XML gerado utilizando XSL ou até mesmo setando o nome do DataSet para outro, mas não estou conseguindo implementar no meu código.

    segue meu código

    int idInsc;


                DataTable dtInfo = new DataTable("InfoInscricao");

                DAL.Acesso ac = new DAL.Acesso();

                DataSet dtMysql = new DataSet("InfoInscricao"); //Tentativa de setar o nome, não funcionou
                dtMysql.DataSetName = "InfoInscricao"; //Tentativa de setar o nome, não funcionou

                DataSet dtMysql = ac.consulta(@"CONSULTA", DAL.Acesso.QS.Mysql);

                foreach (DataRow dt in dtMysql.Tables[0].Rows)
                {
                    if (string.IsNullOrEmpty(dt.Campo("cod")))
                        return null;
                    else if (dt.Campo("email").ToLower().Trim() != EMAIL.ToLower().Trim())
                        return null;
                    else
                        idInsc = Convert.ToInt32(dt.Campo("cod"));

                    dtInfo = ac.consulta(@"CONSULTA
                                                    WHERE r.cod_inscr = " + idInsc.ToString(), DAL.Acesso.QS.Mysql).Tables[0];

                    dtInfo.Rows.Add("Inscricao", idInsc.ToString());

                }

                //modelo de XML Esses parametros setma o encoding e cabeçalho do XMl
                XmlWriterSettings configXML = new XmlWriterSettings();
                configXML.Indent = true;
                configXML.IndentChars = "";
                configXML.NewLineOnAttributes = false;
                configXML.OmitXmlDeclaration = false;           

                //criação de stream(Arquivo temporário) para leitura do DataSet
                Stream xmlSaida = new MemoryStream();
                XmlWriter oXmlGravar = XmlWriter.Create(xmlSaida, configXML);
               
                //Transferencia do DataTable pro XML
                dtInfo.WriteXml(oXmlGravar, true);

                //Escrevendo o xml em um Document de XML assim ele fica acessível a qualquer método, de conversão.
                XmlDocument documento = new XmlDocument();
                xmlSaida.Position = 0;
                documento.Load(xmlSaida);
                oXmlGravar.Close();
                return documento;

    quarta-feira, 31 de agosto de 2011 12:35

Respostas