我在.aspx中拖入了一个repeater的控件,代码如下        strsql = "SQL语句";
        SqlConnection objConnection = new SqlConnection(ConfigurationSettings.AppSettings["dns"]);
        objConnection.Open();
        SqlCommand cmd = new SqlCommand(strsql, objConnection);
        SqlDataReader dr = cmd.ExecuteReader();
        showit.DataSource = dr;
        showit.DataBind();
        objConnection.Close();---------------------------<asp:Repeater ID="showit" runat="server">
                      <ItemTemplate>
                     <tr>
                            <td>¥<%# Eval("charge") %>元</td>
                            <td>¥<%# Eval("coupon") %>元</td>
                        </tr>
                      </ItemTemplate>
                    </asp:Repeater> 我这里想做的是,<td>¥<%# Eval("coupon") %>元</td>这一行,如果coupon这个值是0或者是null,则这里调用charge,请问,我这里该怎么写if的条件语句呢?谢谢

解决方案 »

  1.   

    在后台代码里处理比较简单
    coupon = (coupon == null || coupon == "0")? charge: coupon;
      

  2.   

    <td>¥ <%# (Eval("coupon")==null || Eval("coupon")==0)? Eval("charge") : Eval("coupon") %>元 </td> 
      

  3.   

    <td>¥ <%# (Eval("coupon")==null || Eval("coupon")==0)? Eval("charge") : Eval("coupon") %>元 </td> 
      

  4.   


    <td>¥ <%# (Eval("coupon")!=null&&Eval("coupon").ToString()!="0")?Eval("coupon").ToString():Eval("charge").ToString()  %>元 </td> 
      

  5.   


    select isnull(case [coupon] when 0 then [charge] else [charge] end,[charge]) [coupon], charge from tableName
      

  6.   

    一样的啊:
    前台:<td>¥ <%# Check(Eval("coupon"),Eval("charge")) %>元 </td> 
    后台:protected string Check(object coupon,object charge)
    {
        return (coupon == null || coupon == 0) ? charge.ToString() : coupon.ToString();
    }