Question

It's actually a bit more complicated than the title. I'm trying to figure out how to pass my own predefined url plus an ID from an XML source-- all as an href in an anchor tag.

Basically, I have a XML source with different titles and ID's:

    <root>
      <mainNode>
         <title>ABC</title>
         <ID>100</ID>
      </mainNode>
      <mainNode>
         <title>DEF</title>
         <ID>101</ID>
      </mainNode>
    </root>

I'm passing the Title to a repeater and want there to be an anchor tag as follows:

    <asp:Repeater ID="xPathRepeater" runat="server">
    <ItemTemplate>
        <li>
            <h1><%#XPath ("title") %></h1> <!--In the first case "ABC" -->
            <a href="preDefinedPathInCodeBehind.aspx?100>Read More...</a>
        </li>
    </ItemTemplate>
</asp:Repeater>

Where 100 would be the ID I'm getting from the XML source.

I have no clue how to do this.

Here is my code behind:

    protected void XMLsource()
{
    string URLString = "http://ExternalSite.com/xmlfeed.asp";

    XmlDataSource x = new XmlDataSource();
    x.DataFile = URLString;
    x.XPath = String.Format(@"root/mainNode");

    xPathRepeater.DataSource = x;
    xPathRepeater.DataBind();
}

Any help would be appreciated. Thank you so much!

Was it helpful?

Solution

I think this is what you are asking for?

  <asp:Repeater ID="xPathRepeater" runat="server">
  <ItemTemplate>
    <li>
      <h1><%#XPath ("title") %></h1> <!--In the first case "ABC" --> 
      <a href="preDefinedPathInCodeBehind.aspx?<%#XPath ("ID") %>">Read More...</a>
    </li>
  </ItemTemplate>
</asp:Repeater>

OTHER TIPS

Did you try this?

<a href='preDefinedPathInCodeBehind.aspx?' + '<%# XPath("ID") %>'>Read More...</a>

Or this..

   <asp:Repeater ID="xPathRepeater" runat="server">
            <ItemTemplate>
                <li>
                    <h1> <%#XPath ("title") %></h1>
                    <!--In the first case "ABC" -->
                    <a href=  "<%# "preDefinedPathInCodeBehind.aspx?" + XPath ("ID")  %>" >Read More...</a> </li>
            </ItemTemplate>
        </asp:Repeater>

Does it mean?

<asp:Repeater ID="xPathRepeater" runat="server">
        <ItemTemplate>
            <li>
                <h1>
                    <%#XPath ("title") %></h1>
                <!--In the first case "ABC" -->
                <a href="preDefinedPathInCodeBehind.aspx?<%#XPath ("ID") %>">Read More...</a> </li>
        </ItemTemplate>
    </asp:Repeater>

tried. it works.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top