2009-12-01 33 views
2

現在我有一個存儲過程(SQL服務器),它將從「for xml path」語句返回一個XML。我試着用ExecuteXmlReader和ExecuteReader讀取響應,但我什麼也沒得到。 我谷歌了一會兒,但仍然無法找到如何提取返回值,或者,如何檢索返回值。我應該使用ExecuteXmlReader嗎?或者是其他東西? 謝謝。如何從「for xml path」獲取結果?

con.Open(); 
     string result = ""; 
     XmlReader tmp = cmd.ExecuteXmlReader(); 

     while (tmp.Read()) 
     { 
      string s = tmp.Value; 
     } 

     return result; 

回答

2

ReadOuterXml該方法返回當前節點和所有它的子項,如果定位的元件上或屬性節點,否則返回一個空字符串。您可以通過索引或名稱讀取節點屬性。

XmlReader tmp = cmd.ExecuteXmlReader(); 
tmp.Read(); 
while (!tmp.EOF) { 
    string name = tmp["AttributeName"]; 
    string s = tmp.ReadOuterXml(); 
} 
+0

原來這兩種方法的作品。我的SP出了什麼問題。 但無論如何,謝謝Phaedrus – Wenyang 2009-12-01 04:16:10