正在从对WCF服务的SOAP请求中读取XML属性
本文关键字:请求 读取 XML 属性 SOAP WCF 服务 | 更新日期: 2023-09-27 18:26:07
我有一个MessageContract类,其属性设置为MessageBodyMember属性集。传入的soap请求有一个XML元素,看起来像这样:
<level num="3">error</level>
MessageContract中错误级别的属性如下所示:
[MessageBodyMember(Name="level", Order = 6)]
public string ErrorLevel { get; set; }
我想读取的不是字符串"error",而是属性"num"的值。有办法做到这一点吗?
您可以使用此类构造xml类型:http://msdn.microsoft.com/en-us/library/system.xml.linq.xelement.aspx
代码为:
TextReader sr = new StringReader("<level num="3">error</level>");
XElement xml = XElement.Load(sr);
一旦完成,你就可以访问这样的属性:
int Num = Int32.Parse(xml.Element("level").Attribute("num").Value);
如果要创建完整的xml文档,则需要"XDocument"answers"XDeclaration"。
记住必要的使用语句。