2010-07-29 62 views
1

我从WCF服务获取List,我想将它设置为网格的数据源。当我databind我得到的错误,“Deviceheader”不是someObject的属性。Asp.net可以绑定到字段而不是属性?

<td><%# Eval("Deviceheader.DeviceID") %></td> 

这是事实,这不是一个属性,它是一个公共领域

public class someObject(){ 

    public DeviceHeaderDc Deviceheader; 

} 

我怎么能数据绑定到这些领域,因为它们不是作为属性来实现?有什么建议么?我想尽可能避免使用属性实现编写包装对象。如果任何人有任何提示或技巧,我可以在这里使用,我都听过。

干杯,
〜CK

回答

2

最好为网格写一个RowDataBound事件。使用文字控制或服务器绑定您的TD标签。然后,你可以使用任何你想绑定到该领域。如果你愿意,我可以提供一个例子。

+1

在这种情况下有数百个对象,因此转换为AutoProperties不可行。这对我的情况很好。谢谢! – Hcabnettek 2010-07-30 18:19:02

1

为什么不将它们定义为自动属性,像这样

public DeviceHeaderDc Deviceheader { get; set;} 

这种方式支持字段将自动生成,让你以后改变后的灵活性如果你想。

+0

是的,我同意,没有理由不应该将该字段实现为属性,特别是自引入自动属性以来。 – 2010-07-30 03:00:21

相关问题