【发布时间】:2012-06-22 01:49:43
【问题描述】:
我正在使用以下代码使用来自 DB 优先模型的数据填充 DevExpress XtraGrid。调用SaveChanges 无效,我认为这是因为没有与我为网格选择的对象匹配的缓存对象。
有什么方法可以告诉 EF 在保存更改期间使用 PK Id 将新值应用于缓存对象?如果我将整个 Employee 对象用于网格,则调用 SaveChanges 有效。
private void EmployeeFormLoad(object sender, EventArgs e)
{
empsGridView.OptionsBehavior.Editable = true;
var emps = context.Employees.Select(emp => new EmployeeDescriptor
{
Id = emp.Id,
FirstName = emp.FullNames,
LastName = emp.Surname
});
employeeDescriptorBindingSource.DataSource = emps.ToList();
}
private void button1_Click(object sender, EventArgs e)
{
employeeDescriptorBindingSource.EndEdit();
context.SaveChanges();
}
【问题讨论】:
标签: entity-framework entity-framework-4 entity-framework-4.1 devexpress