0

関連する 2 つのエンティティのデータを 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);

しかし、それは Training エンティティ全体を 1 つの列に入れるだけです

少なくとも、Training エンティティからトレーニング名を取得し、それに応じて変更を加えてデータ コンテキストを更新できるようにしたいと考えています。もっと役立つように写真を投稿したかったのですが、これが私の最初の質問です。どんな助けでも大歓迎です!

4

1 に答える 1

1

メディエーター パターンを実装して、両方のエンティティをメディエーターの単一のプロパティにバインドすることで内部編集を管理するようにしてください。次に、DataGridView を Mediator にバインドし、それぞれのエンティティでカスタムの適切な更新を管理できるようにします。

于 2012-09-19T16:26:09.240 に答える