【发布时间】:2014-01-05 21:04:35
【问题描述】:
给定这个 XML,如何使用 xpath 查询选择 PostBack 的值?
<AuthenticateResponse xmlns="http://example.com/authentication/response/1">
<Status>success</Status>
<Result>more-info</Result>
<StateContext />
<AuthenticationRequirements>
<PostBack>/Authentication/ExplicitForms/AuthenticateAttempt</PostBack>
<CancelPostBack>/Authentication/ExplicitForms/CancelAuthenticate</CancelPostBack>
<CancelButtonText>Cancel</CancelButtonText>
</AuthenticationRequirements>
</AuthenticateResponse>
我希望这可以工作,但它返回 null:
var nsmgr = new XmlNamespaceManager(doc.NameTable);
nsmgr.AddNamespace("AuthenticateResponse", "http://example.com/authentication/response/1");
var node = doc.SelectSingleNode("//AuthenticateResponse:AuthenticationRequirements/PostBack", nsmgr);
【问题讨论】: