【发布时间】:2012-07-10 05:49:00
【问题描述】:
我有一个连接两个表的 LINQ 表达式。我想将“列表”绑定到 Gridview。代码在 Gridview 模板中出现此错误: DataBinding:“SearchResult”不包含名为“codereq”的属性。
IQueryable<SearchResult> myList = from t in TBL_Apartment
join k in TBL_Owner on t.Code equals k.Code
where k.CodeReq == t.CodeReq
select new SearchResult
{
codereq= t.CodeReq,
name = t.Name
}
public class SearchResult
{
public string codereq;
public string name;
}
绑定Gridview代码:
GridSearch.DataSource = myList.ToList();
GridSearch.DataBind();
因为我的网格视图的 aspx 页面如下:
<telerik:RadGrid ID="GridSearch" runat="server" Skin="Office2007" AutoGenerateColumns="False"
dir="rtl" Width="750px" GridLines="None" >
<MasterTableView>
<Columns>
<telerik:GridTemplateColumn HeaderText="Request Code" FilterControlWidth="100px">
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# Eval("codereq")==""?"0":Eval("codereq") %>'></asp:Label>
</ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridTemplateColumn HeaderText="Owner Name" FilterControlWidth="100px">
<ItemTemplate>
<asp:Label ID="Lbl_Mahale" runat="server" Text='<%# Eval("name")==""?"":Eval("name") %>'></asp:Label>
</ItemTemplate>
</telerik:GridTemplateColumn>
</Columns>
</MasterTableView>
<PagerStyle AlwaysVisible="True" />
<ClientSettings><Selecting AllowRowSelect="True" /></ClientSettings>
</telerik:RadGrid>
【问题讨论】:
-
在 SearchResult 类中添加一个属性 Aparteman
-
最好使用 string.empty 而不是 ""
-
@JohnnBlade 抱歉,我现在编辑了代码
-
您是否检查过是否为您的网格使用了正确的数据源?
-
@JohnnBlade 错误编辑:DataBinding: 'SearchResult' 不包含名称为 'codereq' 的属性
标签: c# sql linq linq-to-sql linq-to-entities