0

我正在尝试在 DataGridView 中显示来自两个相关实体的数据。我知道我可以选择这样的值:

  from tasks in context.TaskSettings
     join train in context.Trainings on tasks.TrainingID equals train.TrainingID
     where tasks.TrainingID == task
           select new {TrainingName = train.TrainingName,  
                       DriversNeeded = tasks.DriversNeeded, 
                       EmployeesPerSupervisor = tasks.EmployeesPerSupervisor};

但这给了我不可变的值,我的兴趣是在 DataGridView 中显示这些值,以便用户可以编辑这些值并单击保存更改。

我已经尝试过这种其他方法

ObjectQuery<TaskSetting> trainingSettings = 
    (ObjectQuery<TaskSetting>)context.TaskSettings.Where(t => t.TrainingID == task);
dgvTask.DataSource = trainingSettings.Execute(MergeOption.AppendOnly);

但这只是将整个培训实体放在一个列中

我希望至少能够从培训实体获取培训名称,并且仍然能够进行更改并相应地更新数据上下文。我想张贴图片更有帮助,但这是我的第一个问题。任何帮助将不胜感激!

4

1 回答 1

1

为什么不更好地实现调解器模式,以便通过将两个实体绑定到调解器上的单个属性来管理内部编辑。然后将 DataGridView 绑定到 Mediator 并让它管理相应实体上的自定义正确更新。

于 2012-09-19T16:26:09.240 回答