ASP.NET:DataList - 如何在ItemTemplate中的Item中编辑2个变量

时间:2010-12-04 03:34:01

标签: .net asp.net templates datalist

我有一个datalist,在ItemTemplate上,我这样做:

<%#Eval ("MinAge") %>

MinAge是Int的地方。我也有一个MaxAge也是一个int。

问题是,如何更改它以便我可以执行以下操作:

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

因此,如果我们有minage = 18,maxage = 99则为18+ 如果我们的minage = 18,maxage = 20则为18 - 20

事情是我变得复杂,因为我试图将int更改为string,那么这样做的正确方法是什么?

1 个答案:

答案 0 :(得分:0)

在你的代码隐藏中做...

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

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

   return min + " - " + max;
}

然后替换你的

<%# Eval("MinAge") %>

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

请注意使用=而不是#。

您需要在GetAgeRange中进行更多错误检查,但总体思路应该是您所需要的。