/// <summary> /// Creates the specific employee training view. /// </summary> /// <param name="selectedEmployeeId">The selected employee identifier.</param> /// <param name="employee">The employee.</param> /// <param name="company">The company.</param> /// <param name="trainingCollection">The training collection.</param> /// <param name="companyCollection">The company collection.</param> /// <param name="processingMessage">The processing message.</param> /// <returns></returns> /// <exception cref="ArgumentNullException"> /// trainingCollection /// or /// companyCollection /// or /// trainingCollection /// or /// trainingCollection /// </exception> public IEmployeeTrainingListView CreateSpecificEmployeeTrainingView(int?selectedEmployeeId, IEmployee employee, ICompanyDetail company, IList <IEmployeeTrainingModel> trainingCollection, IList <ICompanyDetail> companyCollection, string processingMessage) { if (trainingCollection == null) { throw new ArgumentNullException(nameof(trainingCollection)); } if (companyCollection == null) { throw new ArgumentNullException(nameof(companyCollection)); } if (trainingCollection == null) { throw new ArgumentNullException(nameof(trainingCollection)); } if (trainingCollection == null) { throw new ArgumentNullException(nameof(trainingCollection)); } var companyDDL = GetDropDownList.CompanyListItems(companyCollection, -1); var employeeTrainingDDL = GetDropDownList.EmployeeTrainingListItems(trainingCollection, -1); var viewModel = new EmployeeTrainingListView { CompanyDropDownList = companyDDL, employeeTrainingView = trainingCollection, ProcessingMessage = processingMessage, Employee = employee, Company = company, }; return(viewModel); }