如果Eval()!= null,ASP.NET Eval()问题显示两列

时间:2011-09-16 15:17:59

标签: c# asp.net eval

如果另一个Eval()数据项的值不为null,我想显示一个额外的<tr><td> <?# Eval("DataValue") %> </td></tr>

我有以下aspx:

   <%# Eval(TwoColumns).ToString() == null ? " " : Eval(Column2Data).ToString() %>

这可能吗?我得到以下数据绑定错误:不包含名称为“true”的属性。

关于如何做到这一点的任何想法?

3 个答案:

答案 0 :(得分:4)

我不确定你在问什么,但尝试这样的事情:

<%# Eval("SomeColumn") == DBNull.Value ? " " : Eval("AnotherColumn") %>

如果这没有帮助,请编辑您的问题并提供问题和目标的更详细说明。

修改

对于追加行和列,您可以尝试:

<%# Eval("SomeColumn") == DBNull.Value ? " " : String.Format("<tr><td>{0}</td></tr>", Eval("AnotherColumn")) %>

答案 1 :(得分:0)

我必须使用以下内容:

<%# (Eval("TwoColumns") == null) ? " " : Eval("Column2Data").ToString() %>

如果Eval中的数据为null并抛出NullReferenceException,则.ToString()方法将失败。

答案 2 :(得分:0)

<%# Eval("SomeColumn").Equals(DBNull.Value) ? "" : "<td>" + Eval("AnotherColumn") + "</td>" %>