空引用错误 Eval(字符串) 将其传递给代码隐藏中的函数

Null Reference Error Eval(string) passing it to function in code behind

本文关键字:代码 隐藏 函数 Eval 错误 引用 字符串      更新时间:2023-09-26

我正在尝试获取此RadGrid/Gridview来评估此字段的字符串值是什么,并将其传递给我在代码隐藏中的函数。

 <telerik:GridTemplateColumn HeaderText="Movie Source" HeaderStyle-HorizontalAlign="Center" ItemStyle-HorizontalAlign="Center" > 
                <ItemTemplate> 
                          <asp:Image ID="imgStatus2" runat="server" visible="true" ImageURL='<%# Container.DataItem ,GetImageMovie(Eval("MovieSource").ToString()) %>' />
                 </ItemTemplate> 
              </telerik:GridTemplateColumn>

不幸的是,这给了我一个"空引用错误"。 我相信我已经将问题归结为"imageurl"评估。

对于某些记录,MovieSource 可能为 null,当您尝试将 MovieSource 转换为字符串时,会引发 null 引用错误。

与其在页面上调用 GetImageMovie 方法,不如从网格的 ItemDataBound 事件中设置 ImageUrl。然后,如果将 MovieSource 包含在网格的 MasterTableView 的 DataKeyNames 中,则可以从 ItemDataBound 事件访问 MovieSource。

这样,您可以检查MovieSource是否为空,并在这种情况下执行其他操作,即显示通用的"未找到图像"图像。