存在するすべての値が c# のディクショナリに追加されていません。これまでのコード スニペットは次のとおりです。
XmlNodeList Bugs_filter = Bugs.SelectNodes("/criteria/includeFilterSets/filterSet/filter");
if (Bugs_filter != null)
{
foreach (XmlNode BNode in Bugs_filter)
{
string data = BNode.SelectSingleNode("/criteria/includeFilterSets/filterSet/filter/filterName").InnerText;
string aggregate = BNode.SelectSingleNode("/criteria/includeFilterSets/filterSet/filter/value").InnerText;
{
Dict.Add(data,aggregate);
}
}
}
「Bugs_Filter」には合計 3 つの値が存在しますが、2 回目にループに入ると最初の値のみが取得されます。私が間違っていることを提案してください。
値を抽出している XML を参照してください。
<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?><criteria><includeFilterSets><filterSet><filter><filterId>42</filterId>
<filterName>PRODUCT_ID</filterName><operator><id>1</id><name>Equals</name></operator><value>1113</value></filter><filter><filterId>41</filterId>
<filterName>FAMILY_ID</filterName><operator><id>1</id><name>Equals</name></operator><value>ESG</value></filter><filter><filterId>3</filterId><filterName>VERSION_NAME</filterName>
<operator><id>1</id><name>Equals</name></operator><value>4.5</value></filter></filterSet></includeFilterSets><excludeFilterSets/><ordering/>
<bugGroupSearchMode>0</bugGroupSearchMode><caseSensitive>true</caseSensitive><entityToSearch><id>1</id><name>BUG</name></entityToSearch></criteria>
PRODUCT_ID、FAMILY_ID、および VERSION_NAME を抽出していることに注意してください。