2 つのテーブルを結合する 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>