0

次のような XML 階層があるとします。

<Animal>
    <Kingdom>
        <Phylum>
            <Class></Class>
            <Class></Class>
        </Phylum>
        <Phylum>
            <Class></Class>
            <Class></Class>
        </Phylum>
    </Kingdom>
    <Kingdom>
        <Phylum>
            <Class></Class>
            <Class></Class>
        </Phylum>
    </Kingdom>
</Animal>

(etc.)

同様に、ネストされたリピーターを使用する ASP.NET コードがあります。次のようになります。

<asp:Repeater ID="ShowKingdom" runat="server" DataSource="(SomeDataSource)">
    <ItemTemplate>
        <asp:TextBox ID="txtKingdom" runat="server" XPath="/*[local-name()='Animal']/*[local-name()='Kingdom'][{0}]">
        <asp:Repeater ID="ShowPhylum" runat="server" OnItemDataBound="(SomeDataBinder)">
            <ItemTemplate>
                <asp:TextBox ID="txtKingdom" runat="server" XPath="/*[local-name()='Animal']/*[local-name()='Kingdom'][{0}]/*[local-name()='Phylum'][???]">
            </ItemTemplate>
        </asp:Repeater>
    </ItemTemplate>
</asp:Repeater>

私の問題: ネストされたリピーター内の XPath にノード インデックス セレクター"[???]"を指定するにはどうすればよいですか?!?

注: 私の言語は ASP.NET 内の VB です。

編集:別のインデックス「[{1}]」(インデックスの範囲外エラーが発生します)、相対Xpath「[local-name()= 'Phylum']」(「/ *" が先行する -- ノード/パスを認識しない)、ネストされたリピーター データ ソースをいじる (XPath を認識しないかクラッシュする)。

明らかに、私はこれらのいずれかを機能させることができませんでした。別のアプローチを検討する必要がありますか?

編集#2:動作したくない別のこと:ネストされたリピーターの場合:

DataSource="<%# XPathSelect('Phylum')%>"
4

1 に答える 1