代码隐藏
protected void RadGrid1_NeedDataSource(object sender, GridNeedDataSourceEventArgs e)
{
RadGrid1.DataSource = DbContext.students.Select("it.name,it.subject");
}
protected void RadGrid1_InsertCommand(object sender, GridCommandEventArgs e)
{
GridEditableItem item = e.Item as GridEditableItem;
Hashtable values = new Hashtable();
item.ExtractValues(values);
student stdd = new student();
item.UpdateValues(stdd);
DbContext.AddTostudents(stdd);
DbContext.SaveChanges();
}
protected void RadGrid1_UpdateCommand(object sender, GridCommandEventArgs e)
{
GridEditableItem item = e.Item as GridEditableItem;
int roll = (int)item.GetDataKeyValue("rollno");
//int t = Int32.Parse(roll);
student stdd = DbContext.students.Where(p => p.rollno == roll).FirstOrDefault();
item.UpdateValues(stdd);
//DbContext.AddTostudents(stdd);
DbContext.SaveChanges();
}
protected void RadGrid1_DeleteCommand(object sender, GridCommandEventArgs e)
{
GridDataItem item = e.Item as GridDataItem;
int roll=(int)item.GetDataKeyValue("rollno");
student stdd = DbContext.students.Where(p => p.rollno == roll).FirstOrDefault();
DbContext.DeleteObject(stdd);
DbContext.SaveChanges();
}
并收到类似 DataBinding 的错误:“System.Data.Objects.MaterializedDataRecord”不包含名称为“rollno”的属性。我的表名称为学生,列名称为-rollno、名称、主题。
最佳答案
你只选择了name和subject字段,尝试添加rollno字段再试一次
DbContext.students.Select("it.name,it.subject,it.rollno");
关于c# - System.Data.Objects.MaterializedDataRecord 不包含属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6972657/