プロシージャを実行し、値を a に入力しDataSet
ます。プロシージャは XML データ型の値を返します。を XMLに変換するDataSet
と、XML データ型の値が文字列として取得されますが、子ノードとして使用する必要があります。どうすればいいですか?
手順の出力:
DataSet
以下のようにXMLに変換します
DataSet ds = null;
using (SqlConnection connection = new SqlConnection(sConnectionString))
{
connection.Open();
SqlCommand Sqlcommand = new SqlCommand();
Sqlcommand.CommandType = CommandType.StoredProcedure;
if (SqlParamlist != null)
{
foreach (SqlParameter Sqlparameter in SqlParamlist)
{
Sqlcommand.Parameters.AddWithValue(Sqlparameter.ParameterName, Sqlparameter.Value);
}
}
Sqlcommand.CommandText = sProc;
Sqlcommand.Connection = connection;
sProcParams = sProc + " " + sProcParams;
using (SqlDataAdapter da = new SqlDataAdapter(Sqlcommand))
{
ds = new DataSet("DATATABLE");
da.Fill(ds, "DATAROW");
Sqlcommand.Parameters.Clear();
da.Dispose();
}
connection.Close();
}
XmlDataDocument xDoc = new XmlDataDocument();
xDoc.LoadXml(ds.GetXml());
これが私のxDoc.OuterXml
持っているものです
<DATATABLE>
<DATAROW>
<xmllimes><row><time>16:00:00</time></row></xmllimes>
</DATAROW>
<DATAROW>
<xmllimes><row><time>14:20:00</time></row></xmllimes>
</DATAROW>
<DATAROW>
<xmllimes><row><time>12:30:00</time></row></xmllimes>
</DATAROW>
</DATATABLE>
ds.GetXML()
しかし、私は以下を返したい
<DATATABLE>
<DATAROW>
<xmllimes>
<row>
<time>16:00:00</time>
</row>
</xmllimes>
</DATAROW>
<DATAROW>
<xmllimes>
<row>
<time>14:20:00</time>
</row>
</xmllimes>
</DATAROW>
<DATAROW>
<xmllimes>
<row>
<time>12:30:00</time>
</row>
</xmllimes>
</DATAROW>
</DATATABLE>