数据列表中不直观的位置读取错误


***ERROR***
***********
Exception Details: System.NullReferenceException: Object reference not set to an instance of an object.
***********
Line: <td>< asp:Label ID="Label59" runat="server" Text='<%# Eval("field2").Equals("") ? "" : Eval("field3") + " " + Eval("field4") + " " + Eval("field 5") %>' /></td>
***********
***********

你好

很高兴能够得到任何反馈。 我对使用 3.5 ASP.NET 有点陌生

向现有 sqlreader 类添加新字段后出错。 该错误应该指向数据列表中的空值。 但是,如果删除这一行,则整个ItemTemplate都没有问题。

_var= 读取器["字段"] != 空 ?(int)reader["field"] : 0;

sqlreader类的唯一其他更改是新字段的设置。

提前谢谢你

如果你的field2包含nullEval("field2")将被null,所以你在调用Equals时会得到一个空引用。只需交换操作数:

<%# "".Equals(Eval("field2")) ? "" : Eval("field3") + " " + Eval("field4") + " " + Eval("field 5") %>

尽管我建议与null进行比较,后者更具可读性并且可能更正确。

最新更新