返回值自动模式XML

时间:2010-06-30 14:33:52

标签: c# sql-server xml

我正在尝试为webservice动态编写一些xml。我最近已经展示了如何使用FOR XML AUTO子句进行我的sql查询,但我不确定如果我正在编写查询并且在此之上我不确定如何返回文档值

using (SqlConnection oCn = new SqlConnection())
{
    oCn.ConnectionString = @"server=sql-server\cos;integrated security=SSPI;database=daas5";
    oCn.Open();

    // Create a SQL command object.
    string strSQL = "SELECT * FROM dd615.musicdetails WHERE artistname LIKE '%" + 
                        searchTerm + "%' OR recordname LIKE '%" + searchTerm + "%' 
                        OR recordtype LIKE '%" + searchTerm + "%' 
                        OR format LIKE '%" + searchTerm + "%'
                     FOR XML AUTO, ELEMENTS, ROOT('musicInformation') ";

    SqlCommand myCommand = new SqlCommand(strSQL, oCn);
}          

任何帮助将不胜感激

1 个答案:

答案 0 :(得分:1)

到目前为止,您的SQL似乎很好 - 最好的办法是在.ExecuteXmlReader对象上使用SqlCommand

XmlReader reader = myCommand.ExecuteXmlReader();

完成后,您可以轻松将其加载到XDocument

XDocument doc = XDocument.Load(rdr);

XmlDocument

XmlDocument xdoc = new XmlDocument();
xdoc.Load(rdr);

所以选择适合你的那个!