2012-12-28 55 views
1

我想在asp.net中返回一個XML文件作爲Web服務方法的輸出。任何人都可以幫助一個例子。如何在asp.net中爲Web服務方法返回一個xml文件

這是Web服務方法,我有done.But時,我稱之爲「海」的方法,我得到一個錯誤和error.The我得到的是如下:

有一個在XML文檔錯誤(1,287)

[WebMethod] 
public XElement hai() 
{ 
    try 
    { 


     XElement xmlTree1 = new XElement("Root", 
          new XElement("Child1", 1), 
          new XElement("Child2", 2), 
          new XElement("Child3", 3), 
          new XElement("Child4", 4), 
          new XElement("Child5", 5), 
          new XElement("Child6", 6) 
     ); 

     return xmlTree1; 
    } 
    catch 
    { 
     throw; 
    } 
} 
+0

你可以看到下面的鏈接。 http://stackoverflow.com/questions/3000934/return-xml-data-from-a-web-service –

+0

僅供參考,您是否知道ASMX不應該用於新開發? –

回答

0

或者,您也可以返回一個XmlDocument

[WebMethod] 
public XmlDocument hai() 
{ 
     XmlDocument doc = new XmlDocument(); 

     XmlNode rootNode = doc.CreateElement("products"); 
     doc.AppendChild(rootNode); 

     XmlNode product1Node = doc.CreateElement("product"); 
     rootNode.AppendChild(product1Node); 

     XmlNode product1NameNode = doc.CreateElement("Name"); 
     product1NameNode.InnerText = "Product 1"; 
     product1Node.AppendChild(product1NameNode); 
     XmlNode product1ColorNode = doc.CreateElement("Color"); 
     product1ColorNode.InnerText = "Blue"; 
     product1Node.AppendChild(product1ColorNode); 

     XmlNode product2Node = doc.CreateElement("product"); 
     rootNode.AppendChild(product2Node); 

     XmlNode product2NameNode = doc.CreateElement("Name"); 
     product2NameNode.InnerText = "Product 2"; 
     product2Node.AppendChild(product2NameNode); 
     XmlNode product2ColorNode = doc.CreateElement("Color"); 
     product2ColorNode.InnerText = "Yellow"; 
     product2Node.AppendChild(product2ColorNode); 

     return doc; 
} 

輸出:

<?xml version="1.0" encoding="UTF-8"?> 
<products> 
    <product> 
     <Name>Product 1</Name> 
     <Color>Blue</Color> 
    </product> 
    <product> 
     <Name>Product 2</Name> 
     <Color>Yellow</Color> 
    </product> 
</products> 
+0

它如何幫助OP使用不同的XML技術? –

+0

OP希望無論XML技術如何,都要從Web服務返回XML,因爲他沒有指定它。 – GeorgeChond

+0

OP已經在使用XElement。 XmlElement會更好嗎? –

相關問題