Esempio n. 1
0
        public ActionResult EditTraining(int id)
        {
            var employee  = GetEmployeeWithTrainingProgramsById(id);
            var viewModel = new TrainingProgramEmployeeEditViewModel()
            {
                Employee                   = employee,
                AllTrainingPrograms        = GetAllTrainingPrograms(id),
                SelectedTrainingProgramIds = employee.TrainingPrograms.Select(t => t.Id).ToList()
            };

            return(View(viewModel));
        }
Esempio n. 2
0
        public ActionResult EditTraining(int id, TrainingProgramEmployeeEditViewModel viewModel)
        {
            var updatedEmployee = viewModel.Employee;

            try
            {
                using (SqlConnection conn = Connection)
                {
                    conn.Open();
                    using (SqlCommand cmd = conn.CreateCommand())
                    {
                        cmd.CommandText = @"
                            DELETE FROM EmployeeTraining WHERE EmployeeId = @id;";
                        cmd.Parameters.Add(new SqlParameter("@id", id));
                        cmd.ExecuteNonQuery();

                        cmd.CommandText = @"
                            INSERT INTO EmployeeTraining (EmployeeId, TrainingProgramId)
                                VALUES (@employeeId, @trainingProgramId)";
                        foreach (var trainingProgramId in viewModel.SelectedTrainingProgramIds)
                        {
                            cmd.Parameters.Clear();
                            cmd.Parameters.Add(new SqlParameter("@employeeId", id));
                            cmd.Parameters.Add(new SqlParameter("@trainingProgramId", trainingProgramId));
                            cmd.ExecuteNonQuery();
                        }
                    }
                    return(RedirectToAction("Details", new { id = id }));
                }
            }
            catch
            {
                viewModel = new TrainingProgramEmployeeEditViewModel()
                {
                    Employee            = viewModel.Employee,
                    AllTrainingPrograms = GetAllTrainingPrograms(id)
                };

                return(View(viewModel));
            }
        }