【问题标题】:ASP.NET Eval() problem displaying two columns if Eval() != null如果 Eval() != null 显示两列的 ASP.NET Eval() 问题
【发布时间】:2013-06-04 21:17:41
【问题描述】:

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

我有以下aspx:

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

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

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

【问题讨论】:

    标签: c# asp.net eval


    【解决方案1】:

    我有点不确定你在问什么,但试试这样的:

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

    如果这没有帮助,请编辑您的问题并更详细地描述问题和目标。

    编辑

    至于追加一行和一列,你可以试试这个:

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

    【讨论】:

    • 谢谢,这行得通,但有没有办法像下面这样输出 Eval("AnotherColumn") 的值? Eval("AnotherColumn") %>
    【解决方案2】:

    我必须使用以下内容:

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

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

    【讨论】:

      【解决方案3】:
      <%# Eval("SomeColumn").Equals(DBNull.Value) ? "" : "<td>" + Eval("AnotherColumn") + "</td>" %>
      

      【讨论】:

        猜你喜欢
        • 2013-05-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-04-12
        • 2013-04-10
        • 1970-01-01
        相关资源
        最近更新 更多