我使用LINQ to SQL中填寫一個GridView:無法投匿名對象System.Data.DataRowView
var results = from r in db.MyForm1_hosps
where r.recordId == recordId
orderby r.hospId
select new { r.hospId, r.which, r.description };
if (results.Count() > 0)
{
Form_1_hosp.DataSource = results;
Form_1_hosp.DataBind();
}
OnRowDataBound在以後,我調用下面的代碼填寫在RadioButtonList的
的價值if (e.Row.RowType == DataControlRowType.DataRow)
{
RadioButtonList rbl = e.Row.FindControl("which") as RadioButtonList;
if (rbl != null)
{
DataRowView rowView = (DataRowView)(e.Row.DataItem);
LoadRadioButtonList(rowView["which"], rbl);
}
}
我得到以下錯誤:
Unable to cast object of type '<>f__AnonymousType1`3[System.Int32,System.Int16,System.String]' to type 'System.Data.DataRowView'.
我明白,一個匿名的對象不能投到datarowview,但我可以施加什麼,以獲得「哪個」的值
這看起來不錯。我不會在星期一之前嘗試這種方式,並且如果它有效(它應該)會標記爲已回答。 – peroija 2012-02-17 23:45:43
都有效。因爲我有5個gridviews,我不想創建5個類,所以我選擇了第二個。謝謝! – peroija 2012-02-20 13:25:46