1

次のように、Linq-to-SQL を使用ListViewして生成されたにa をバインドしています。IQueryable<IGrouping<>>

var lineChanges = dcOJ.LineAuthoriserChanges.GroupBy(g => g.tbl_line)
    .OrderBy(ord => ord.Key.tbl_journal.RefNo);

lvLineAuthoriserChanges.DataSource = lineChanges;
lvLineAuthoriserChanges.DataBind();

マークアップでは、オブジェクトのKeyプロパティを参照しようとしています:IGrouping<>

<td rowspan="2"><%# Eval("Key.tbl_journal.RefNo") %></td>

ただし、次のエラーが表示されます。

DataBinding: 'System.Data.Linq.SqlClient.ObjectReaderCompiler+Group`2[[Online.LinqToSQL.tbl_line, Online, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null],[Online.LinqToSQL.LineAuthoriserChange, Online, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]' does not contain a property with the name 'Key'.

データ項目をキャストしてそのように値を表示することはできますが、それは不十分なようです。

<%# ((IGrouping<tbl_line, LineAuthoriserChange>)Container.DataItem).Key.tbl_journal.RefNo %>

何が起こっているのか誰にも考えがありますか?型指定されたオブジェクトのプロパティの欠落に関する苦情であることは奇妙に思えます。

4

0 に答える 0