1

私はXPathが初めてです。

C# を使用して、親ノードと複数の子ノードを持つ XML ファイルを読み込もうとしています

XPathNavigator を使用して、ルート/親で Select を実行し、この値を XPathNodeIterator に割り当てます。 XPathNodeIterator ni = _xpathNavigator.Select(theTag);

次に、次へ移動します ni.Current.Value を使用する場合

親だけでなく、Child1 と Child2 の両方からテキスト値を取得します

私が取得したいのは、親のみの値です

OuterText も同様の結果を示しています。

これを機能させる方法を知っている人はいますか?

4

1 に答える 1

1

次のようなxmlがあるとします。

<root>
  <outer>
    outerValue
    <inner1>innerValue1</inner1>
    <inner2>innerValue2</inner2>
  </outer>
</root>

/outer の戻り値として「outerValueinnerValue1innerValue2」が表示されます。

オブジェクトに、outerValue だけを与えるプロパティがあるとは思いません。明らかに、子ノードを反復処理して、連結された文字列からそれらの値を削除できますが、それは恐ろしいことです。

おそらく、新しい子ノードをxmlに追加するのが最善です。

<root>
  <outer>
    <value>outerValue</value>
    <inner1>innerValue1</inner1>
    <inner2>innerValue2</inner2>
  </outer>
</root>
于 2012-05-08T20:41:35.813 に答える