请忽略这个问题。问题在于数据进入方法,而不是我在问题中编写的任何代码/xml。我会删除这个问题,但它已经有了答案。
我有一些 XML,我针对评估程序测试了 XPath 查询并得到了预期的结果,但我的代码似乎无法达到相同的结果。
这是 XML 的一个片段
<custom-table security="seeown" allownotify="false">
<reports show="all">
<report aspurl="../Reports/" label="Buy Sheet" security="moderator"/>
</reports>
<select-field name="StatusQ3MAP" eval="false">
<option value="Accept" label="Accept"/>
<option value="Decline" label="Decline"/>
</select-field>
<select-field name="MerchantStatus" eval="false">
<option value="Review 1" label="Review 1"/>
<option value="Review 2" label="Review 2"/>
</select-field>
</custom-table>
我的 XPath 看起来像是custom-table/select-field[@name="StatusQ3MAP"]
在 XML 中为我提供了适当的选择字段元素。
但是,我似乎不起作用的方法是:
public static List<string> GetListItems(string fieldName, XPathNavigator nav)
{
var list = new List<string>();
var nodes = nav.Select(string.Format("/custom-table/select-field[@name = '{0}']", fieldName));
foreach (XPathNavigator item in nodes)
list.Add(item.Value);
return list;
}
假设 fieldName 为“StatusQ3MAP”,节点中似乎没有任何内容,因此在列表中没有返回任何结果。
我究竟做错了什么?