1

我有一个 if 语句当前(错误地)写为:

<%# Eval("AccumHolidays").ToString() != "" ? Eval("AccumHolidays").ToString() : Eval("Holidays").ToString() != "" ? Eval("Holidays").ToString() : %> 0 <% %>

这一直有效,直到我想在最后的 else 中输出 0。寻找类似的东西:

if(Eval("AccumHolidays").ToString() != "")
    Eval("AccumHolidays").ToString();
else
    if(Eval("Holidays").ToString() != "")
        Eval("Holidays").ToString();
    else
        Response.Write("0");

我可能有错误的论点,但是在 aspx 页面中放入的正确语句是什么?

4

2 回答 2

4

我建议另一种方法,如果您不喜欢它,请随时忽略它。为什么不在您的数据源中像这样创建一个新属性

public string HolidaysText
{
    get
    {
        if (AccumHolidays.ToString() != "")
            return AccumHolidays.ToString();
        if (Holidays.ToString() != "")
            return Holidays.ToString();
        return "0";
    }
}

然后你可以在你的页面中有一个简单的 Eval 语句

<%# Eval("HolidaysText") %>
于 2012-06-12T11:33:31.070 回答
2
<%# Eval("AccumHolidays").ToString() != "" ? 
Eval("AccumHolidays").ToString() : Eval("Holidays").ToString() != "" ? 
Eval("Holidays").ToString() : "0"%>   
于 2012-06-12T11:39:01.913 回答