Das Schreiben der Ergebnisse einer FOR XML-Abfrage in einer Datei mit C # .NET
-
16-09-2019 - |
Frage
Ich versuche, das Ergebnis einer FOR XML PATH-Abfrage in eine Datei zu schreiben. Ich kann die Datei erzeugen, aber es ist nicht das Ergebnis der Abfrage enthält. Jeder weiß, wohin ich gehe falsch?
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();
}
Dies ist der Inhalt der XML-Datei, die mit dem obigen Code erzeugt wird.
<?xml version="1.0" standalone="yes"?>
Lösung
Versuchen Sie folgendes:
myDataSet.ReadXml(cmd_Org.ExecuteXmlReader(), XmlReadMode.Auto);
Andere Tipps
Was passiert, wenn Sie die gespeicherte Prozedur von SQL Management Studio anrufen? Sind Sie auf jeden Fall die xml immer wieder?
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow