Escritura de los resultados de una consulta FOR XML en un archivo con C # .NET
-
16-09-2019 - |
Pregunta
Estoy tratando de escribir el resultado de una consulta CAMINO PARA XML en un archivo. Puedo generar el archivo, pero que no contiene los resultados de la consulta. Cualquiera sabe dónde voy mal?
private static void GetChartData(string OC_Ttl1, string OC_Ttl2, string OC_OL31)
{
//Prepare Connection Variables
SqlConnection conn_Org = new SqlConnection();
SqlCommand cmd_Org = new SqlCommand();
//Open Connection
conn_Org.ConnectionString = Set_OrgChartConn();
conn_Org.Open();
//Execute Procedure
cmd_Org.Connection = conn_Org;
cmd_Org.CommandText = "dbo.usp_CreateOrgDataSet";
cmd_Org.CommandType = CommandType.StoredProcedure;
cmd_Org.Parameters.AddWithValue("@OC_Ttl_1", OC_Ttl1);
cmd_Org.Parameters.AddWithValue("@OC_Ttl_2", OC_Ttl2);
cmd_Org.Parameters.AddWithValue("@OC_OL3_1", OC_OL31);
DataSet myDataSet = new DataSet();
myDataSet.ReadXml(cmd_Org.ExecuteXmlReader(), XmlReadMode.Fragment);
myDataSet.WriteXml("myData.xml");
conn_Org.Close();
}
Este es el contenido del archivo XML que se genera con el código de seguridad.
<?xml version="1.0" standalone="yes"?>
Solución
Prueba esto:
myDataSet.ReadXml(cmd_Org.ExecuteXmlReader(), XmlReadMode.Auto);
Otros consejos
¿Qué ocurre si se llama al procedimiento almacenado de SQL Management Studio? ¿Está recibiendo definitivamente el xml de vuelta?
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow