0

XML ファイル

<?xml version="1.0" encoding="utf-8"?>
<Eticket>
    <BookingRef>17313</BookingRef>
    <CompID>HA</CompID>
    <DecimalPreference>2</DecimalPreference>
    <AttachGDSRules>False</AttachGDSRules>
    <FareDetails>
        <BaseFare>1440</BaseFare>
        <Fees>0</Fees>
    </FareDetails>
    <ClientInfo>
        <Client>xyz abc</Client>
        <Address>70 pqrlane</Address>
    </ClientInfo>
</Eticket>

ASPX

<asp:XmlDataSource ID="XmlDataSource1" runat="server" DataFile="~/temp/temp.xml"></asp:XmlDataSource>
<asp:ListView ID="ListView1" runat="server" DataSourceID = "XmlDataSource1">
    <LayoutTemplate>
        <div id="ItemPlaceholderContainer" runat="server">
            <span id="ItemPlaceholder" runat="server"></span>
        </div>
    </LayoutTemplate>
    <ItemTemplate>
        <div class="Eticket">
            <asp:Label ID="BookingRef" runat="server" datasrc="#text" Text='<%#XPath("BookingRef") %>'></asp:Label>
            <asp:Label ID="CompID" runat="server" Text='<%#XPath("CompID") %>'></asp:Label>
            <asp:Label ID="DecimalPreference" runat="server" Text='<%#XPath("DecimalPreference") %>'></asp:Label>
            <asp:Label ID="BaseFare" runat="server" Text='<%#XPath("BaseFare") %>'></asp:Label>
            <asp:Label ID="Client" runat="server" Text='<%#XPath("Client") %>'></asp:Label>
            <asp:Label ID="Address" runat="server" Text='<%#XPath("Address") %>'></asp:Label>                    
        </div>
    </ItemTemplate>
</asp:ListView>

上記のデータは、子の値のみを返します。

予想される出力は次のとおりです。

17313  HA  2  1440  xyz  abc  70 pqrlane

私が得ている実際の出力は次のとおりです。

1440 xyz abc 70 pqrlane

どこが間違っているのか教えてください。
さらに詳細が必要な場合は、この情報で十分であることを願っています。
ありがとうございました

4

1 に答える 1

0

これをテストすることはできませんXmlDataSourceが、1つ以上のエンティティを含むルート要素があると想定しています。XMLファイルには、ルートに1つのエンティティのみが含まれています。

  • xmlファイルを別の要素でラップします。

    <?xml version="1.0" encoding="utf-8"?>
    <Etickets>
        <Eticket>
            ...
        </Eticket>
    </Etickets>
    
  • XmlDataSourceまたは、 :にXPathプロパティを指定します。

    <asp:XmlDataSource ID="XmlDataSource1" runat="server"
        DataFile="~/temp/temp.xml" XPath="/" />
    
于 2012-10-19T14:16:21.387 に答える