【发布时间】:2015-09-25 12:31:54
【问题描述】:
以下代码中我想获取粗体元素:_connectionId 并返回。
有两个return标签,我需要得到“return”和相对值和“_connectionid”一样
<Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
<Body>
<login_newResponse xmlns=\"http:XXXXXXXXXXXX.wsdl">
<return>
<_**connectionid**>@@@@@@@@@@@@@AHT@Q@@@@@D@GR@SUEF</_**connectionid**>
<**return**>CONNESSIONE AVVENUTA</**return**>
</return>
</login_newResponse>
</Body>
</Envelope>
我已尝试使用此代码
XDocument XML = XDocument.Load(s);
var lv1s = from lv1 in XML.Descendants("Body")
select lv1.Nodes();
我获得了一个 XML 字符串列表,但无法获得特定元素。 有没有办法提取任何仅指示名称的元素?
谢谢!
【问题讨论】:
-
这看起来像一个SOAP响应,你为什么不把它反序列化成一个对象?
-
我已经搜索过,但没有找到任何关于使用 WebApi 的 SOAP 服务的信息,所以我自己包装。
-
无论如何,如果你有任何建议肥皂相关我也有兴趣
-
WebAPI 仅支持 RESTful 服务。如果您想使用 SOAP,则不应使用它。请改用 WCF。您还在编写自己的 SOAP 服务吗?如果是这样,您真的应该考虑使用 REST,因为 SOAP 是一个垂死的协议。
-
那不是我自己的肥皂服务。我的应用程序用于前端 html + angularJs,而在后端我有自己的 RestAPI。为了与我在 Web 上公开的外部应用程序交互,我正在包装一个旧的 Soap 服务。功能不多,我只需要使用几个......这就是我决定包装肥皂的原因
标签: c# asp.net xml linq linq-to-xml