手动执行更新时在RadGrid控件中获取错误?

时间:2011-08-07 10:20:44

标签: c# asp.net entity-framework radgrid

代码1:

protected void RadGrid1_UpdateCommand(object sender, GridCommandEventArgs e)
        {
            GridEditableItem item = e.Item as GridEditableItem;
            var roll = item.GetDataKeyValue("rollno").ToString();
            //int t = Int32.Parse(roll);
            students stdd = DbContext.students.Where(p => p.rollno == roll).FirstOrDefault();
            item.UpdateValues(stdd);
            DbContext.SaveChanges();

        }

这是我在RadGrid中更新数据库的代码,我在“(p =&gt; p.rollno == roll)”时收到错误,即“Delegate System.Func不接受1个参数”。< / p>

我正在使用EntityDataModel。我的数据库表名是student,'rollno'是标识。

1 个答案:

答案 0 :(得分:0)

此处描述了类似的问题:linq-to-sql delegate does not take "1" argument。见帖子 的 RiskSWDeveloper_WorkEmail

  

RiskSWDeveloper_WorkEmail 发布:

     

回复可能遇到原始问题的其他人,“委托'System.Func不接受'1'参数':

     

在我更改了基础表中的字段名并刷新了我的实体模型后,我最近遇到了Linq to Entities的这个问题。我从ObjectContext中选择的linq查询仍在查询中使用旧的fieldname(即.Where(x =&gt; x.OldFieldname ==“MyValue”)。我得到了上述错误('Delegate',int,bool&gt;在修复字段名之前不会使用'1'参数。