[英]MVC Parse XML from Web Service
我正在嘗試從Web服務解析xml結果,但出現錯誤{The best overloaded method match for 'System.Xml.Linq.XElement.Parse(string)' has some invalid arguments"}
var service = new RemoteService.RemoteSoapClient("RemoteSoap");
var result = service.GetDetails(systemId, appId);
ViewBag.Surname = XElement.Parse(result).Descendants("Customer").Single().Attribute("Surname").Value;
XML輸出
<?xml version="1.0" encoding="UTF-8"?>
-<List>
-<Customer>
<Surname>Spack</Surname>
<Firstname>Bob</Firstname>
</Customer>
</List>
我做錯了什么,請幫忙。
如果您使用F12 XElement.Parse,則可以看到它只有兩個單獨的方法簽名,這兩個簽名中期望的第一個參數是字符串。 我要猜測service.GetDetails不返回字符串。
如果在ViewBag.Surname分配的末尾拋出.ToString(),則至少應使您擺脫編譯錯誤。 很難說,這是否真的為您提供了您期望的數據。
根據錯誤消息的建議, XElement.Parse()
期望將string
作為參數(而不是當前傳遞的XmlDocument
)。
您可以使用XmlDocument.OuterXml
得到的字符串標記表示XmlDocument
:
ViewBag.Surname = XElement.Parse(result.OuterXml)
.Descendants("Customer")
.Single()
.Element("Surname")
.Value;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.