2010-12-04 24 views
1

J'ai un datalist, et sur le ItemTemplate, je le fais par exemple:ASP.NET: DataList - comment modifier 2 VARs article dans ItemTemplate

<%#Eval ("MinAge") %> 

Où minage est Int. J'ai aussi un MaxAge qui est aussi un int.

quesiton est, comment puis-je le changer pour que je puisse faire quelque chose comme:

if (MaxAge == 99) 
    MinAge + "+" 
else 
    MinAge + "-" + MaxAge 

de sorte que si nous avons minage = 18, maxage = 99 il sera 18+ si nous avons minage = 18, maxage = 20 ce sera 18 - 20

le truc c'est que ça devient compliqué pour moi parce que j'essaye de changer int en string, alors quelle est la bonne façon de le faire?

Répondre

0

Dans votre codebehind faire ...

protected string GetAgeRange(object minAge, object maxAge) 
{ 
    var min = (int)minAge; 
    var max = (int)maxAge; 

    if (max >= 99) 
     return min + "+"; 

    return min + " - " + max; 
} 

Ensuite, votre remplacer

<%# Eval("MinAge") %> 

avec

<%= GetAgeRange(Eval("MinAge"), Eval("MaxAge")) %> 

Notez l'utilisation de = au lieu de #.

Vous aurez besoin de plus de vérification d'erreurs dans GetAgeRange mais l'idée générale devrait être ce dont vous avez besoin.