public AuditViewModel AddUpdateAudit(AuditViewModel model, int LoggedInUserId, int LoggedInOrganizationId) { Audit _audit = Mapper.Map<AuditViewModel, Audit>(model); _audit.AuditSubjects = null; _audit.OrganizationID = LoggedInOrganizationId; if (model.AuditID == 0) { base.Insert(_audit); this._unitOfWork.Save(); model.AuditSubjects.ForEach(x => { x.AuditID = _audit.AuditID; }); _IAuditSubjectRepository.AddAuditSubject(model, LoggedInOrganizationId); } else { _audit = GetSingle(model.AuditID, LoggedInOrganizationId); _audit.Title = model.Title; _audit.Scope = model.Scope; _audit.DueDate = model.DueDate; base.Update(_audit); this._unitOfWork.Save(); //base.RepositoryContext.SP_DeleteAuditSubject(model.AuditID); model.AuditSubjects.ForEach(x => { x.AuditID = _audit.AuditID; }); _IAuditSubjectRepository.AddUpdateAuditSubject(model, LoggedInOrganizationId); } model = Mapper.Map<Audit, AuditViewModel>(_audit); return model; }