GridView绑定字段嵌套类

4

我正在本地开发ASP.NET页面,然后将其上传到服务器。在本地主机上,我成功地在GridView的BoundField的DataField属性中使用了嵌套类。通过嵌套类,我的意思是这样:DataField =“Object.property”其中Object是绑定到GridView行的数据项的属性。一切正常。但是当我将网站发布到服务器上时,出现异常:

未在所选数据源中找到名称为“Object.property”的字段或属性。

我试图找到解决方案,并找到了这个:GridView bound with Properties of nested class

我继续寻找,但是无论哪里都提到在boundfields中使用嵌套类是不可能的。但它对我来说像魔法一样有效。

有人知道原因吗?是.NET Framework的最新版本(我已经在本地安装了版本4.5,在服务器上安装了版本4)还是其他什么原因?是的,看起来很明显是版本问题,但我没有找到任何提及。

感谢您的澄清。 Uiii

1个回答

0

BoundField列仅显示与实例直接关联的属性

因此,我们只能在ItemTemplate中使用DataBinder.Eval来访问嵌套类属性。

以下是代码:

<asp:TemplateField>
<ItemTemplate>
    <%#DataBinder.Eval(Container.DataItem, "NestedClass.Name")%>
</ItemTemplate>


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接