J'ai une source XML et l'un des champs est "description" qui peut varier en longueur mais est toujours assez long. Quand je passe ceci à mon répéteur asp.net, je voudrais limiter le nombre de caractères qui sont affichés par souci de cohérence et de brièveté. Est-ce qu'il y a un moyen de faire ça? Dis ... 300 caractères.Comment limiter le nombre de caractères affichés dans un enregistrement XML dans asp.net?
Merci d'avance!
Mon code frontal:
<asp:Repeater ID="xPathRepeater" runat="server">
<ItemTemplate>
<li>
<h3><%#XPath ("title") %></h3>
<p><%#XPath("description")%></p>
</li>
</ItemTemplate>
</asp:Repeater>
Mon code derrière:
protected void XMLsource()
{
string URLString = "http://ExternalSite.com/xmlfeed.asp";
XmlDataSource x = new XmlDataSource();
x.DataFile = URLString;
x.XPath = String.Format(@"root/job [position() < 5]");
xPathRepeater.DataSource = x;
xPathRepeater.DataBind();
}
Une chose, vous pouvez vouloir évaluer 'desc.text' pour vous assurer de ne pas couper un mot en deux. – Robert
@Pankaj, j'aime bien où tu vas avec ça. Cependant, je ne suis pas sûr que le code fonctionne. J'ai eu une erreur en essayant d'accéder au XML - Impossible de lancer l'objet de type 'System.Web.UI.WebControls.XmlDataSourceNodeDescriptor' pour taper 'System.Xml.XmlElement'. Le XML est le même que votre exemple (moins l'identifiant de ligne). Je ne suis pas assez familier avec Xml pour comprendre ce qui ne va pas. –
pouvez-vous poster votre échantillon XML et le code utilisé côté u? – Pankaj