2010-11-11 4 views

Répondre

0

Je trouve cela sur les forums asp.net site:

XmlDocument xdoc = new XmlDocument(); 
SqlConnection cnn = null; 
SqlCommand cmd = null; 
try 
{ 
     cnn = new SqlConnection(); 
     cnn.ConnectionString = "xxxxxxxxxxxxxxxxx"; 
     cnn.Open(); 

     string selectQry = "SELECT [Xml] FROM [Table1] WHERE [PK_ID] = @ID"; 
     cmd = new SqlCommand(selectQry, cnn); 
     cmd.Parameters.AddWithValue("@ID", ID); 

     XmlReader reader = cmd.ExecuteXmlReader(); 

     if (reader.Read()) 
     xdoc.Load(reader); 
} 
catch (Exception ex) 
{ 
     throw ex; 
} 
finally 
{ 
     cmd.Dispose(); 
     cnn.Close(); 
} 
0

Il suffit de le charger dans un objet de document XML ...

XmlDocument docXml = new XmlDocument(); docXml.LoadXml (stringReturnedFromStoredProc);

Vous pouvez ensuite parcourir les nœuds en boucle ou utiliser XPath pour faire ce que vous avez besoin de faire avec xmldoc.

0
string sql = "sProcName"; 
string connStr = "connectionString"; 

using (SqlConnection connection = new SqlConnection(connStr)) 
{ 
    connection.Open(); 

    SqlDataAdapter adapter = new SqlDataAdapter(); 

    using (SqlCommand cmd = new SqlCommand()) 
    { 
     cmd.Connection = connection; 
     cmd.CommandText = sql; 
     cmd.CommandType = CommandType.StoredProcedure; 

     SqlParameter p = new SqlParameter(); 
     p.Direction = ParameterDirection.Output; 
     p.ParameterName = "@resultXML"; 
     p.SqlDbType = SqlDbType.Xml; 

     cmd.Parameters.Add(p); 

     adapter.UpdateCommand = cmd; 
     result = adapter.UpdateCommand.ExecuteNonQuery(); 
     string resultXML = (string)p.Value; 

     XElement xml = XElement.Parse(resultXML); 
    } 
} 
Questions connexes