ここに私のxmlファイルがあります:
<items>
<item code="1">
<info1>LOREM</info1>
<info2>IPSUM</info2>
<info3>DOLOR</info3>
</item>
<item code="2">
<info1>LOREM</info1>
<info2>AMET</info2>
<info3>CONSECTETUER</info3>
</item>
<item code="3">
<info1>LOREM</info1>
<info2>IPSUM</info2>
<info3>CONSECTETUER</info3>
</item>
</items>
その辞書に保存されている基準に基づいて、いくつかの項目コードを抽出したい:
{ "info1", "LOREM" }
{ "info2", "IPSUM" }
私はそのlinqクエリを書きました:
var test = from element in xml.Descendants("item").Elements()
from param in dicoParams
where param.Key == element.Name.ToString() && param.Value == element.Value
select element.Parent.Attribute("code");
しかし、出力は次のとおりです。
code="1"
code="1"
code="2"
code="3"
code="3"
そして私が期待したのは:
code="1"
code="3"
クエリが少なくとも 1 つの条件を満たす要素を返したことがわかりますが、両方の条件を満たす必要があります。
どうすればそのクエリを書くことができますか?